diff options
| author | Simon Tatham <anakin@pobox.com> | 2007-03-11 10:12:45 +0000 |
|---|---|---|
| committer | Simon Tatham <anakin@pobox.com> | 2007-03-11 10:12:45 +0000 |
| commit | f7e755628b681804e4dd82cd8bcb501a5a6dca57 (patch) | |
| tree | 3b91b1838c8c97c65af3b4df92e3492396c04709 /solo.c | |
| parent | 4212ef4bd2ce85c594d28f7e737fe280e827d1b3 (diff) | |
| download | puzzles-f7e755628b681804e4dd82cd8bcb501a5a6dca57.zip puzzles-f7e755628b681804e4dd82cd8bcb501a5a6dca57.tar.gz puzzles-f7e755628b681804e4dd82cd8bcb501a5a6dca57.tar.bz2 puzzles-f7e755628b681804e4dd82cd8bcb501a5a6dca57.tar.xz | |
Gary Wong observes that solo's decode_params() is overenthusiastic
about eating the letter `d' (for `diagonal') when it appears in a
symmtery description: it should only be used after `m', because
mirror symmetry is the only type that can be diagonal. This was
causing parsing of the parameter description `3x3adu' to produce the
wrong answer: the d would be swallowed, then the u ignored for being
incomprehensible, and you'd get default Trivial difficulty.
[originally from svn r7386]
Diffstat (limited to 'solo.c')
| -rw-r--r-- | solo.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -207,7 +207,7 @@ static void decode_params(game_params *ret, char const *string) if (*string == 'r' || *string == 'm' || *string == 'a') { int sn, sc, sd; sc = *string++; - if (*string == 'd') { + if (sc == 'm' && *string == 'd') { sd = TRUE; string++; } else { |