diff options
author | Vincent Sanders <vince@kyllikki.org> | 2013-05-28 20:14:49 +0100 |
---|---|---|
committer | Vincent Sanders <vince@kyllikki.org> | 2013-05-28 20:29:37 +0100 |
commit | 06d87fec2b7e7dae2bfad7a23692451feb1cd814 (patch) | |
tree | 4b3acefc368a5d75f86192a22c9a92cd2429ab77 /utils | |
parent | 2dec72b4d55b3e728a8582d7055584ecabfb8010 (diff) | |
download | netsurf-06d87fec2b7e7dae2bfad7a23692451feb1cd814.tar.gz netsurf-06d87fec2b7e7dae2bfad7a23692451feb1cd814.tar.bz2 |
if the colour value is unusable do not assign garbage to teh option
Diffstat (limited to 'utils')
-rw-r--r-- | utils/nsoption.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/utils/nsoption.c b/utils/nsoption.c index e2fe225f2..b5add5f91 100644 --- a/utils/nsoption.c +++ b/utils/nsoption.c @@ -103,10 +103,11 @@ strtooption(const char *value, struct nsoption_s *option) break; case OPTION_COLOUR: - sscanf(value, "%x", &rgbcolour); - option->value.c = (((0x000000FF & rgbcolour) << 16) | - ((0x0000FF00 & rgbcolour) << 0) | - ((0x00FF0000 & rgbcolour) >> 16)); + if (sscanf(value, "%x", &rgbcolour) == 1) { + option->value.c = (((0x000000FF & rgbcolour) << 16) | + ((0x0000FF00 & rgbcolour) << 0) | + ((0x00FF0000 & rgbcolour) >> 16)); + } break; case OPTION_STRING: |