missing `i' in `\e'
[sgt/puzzles] / guess.c
diff --git a/guess.c b/guess.c
index dddd052..0984d24 100644 (file)
--- a/guess.c
+++ b/guess.c
@@ -768,7 +768,8 @@ static game_state *execute_move(game_state *from, char *move)
 
        for (i = 0; i < from->solution->npegs; i++) {
            int val = atoi(p);
-           if (val <= 0 || val > from->params.ncolours) {
+           int min_colour = from->params.allow_blank? 0 : 1;
+           if (val < min_colour || val > from->params.ncolours) {
                free_game(ret);
                return NULL;
            }
@@ -835,7 +836,7 @@ static void game_compute_size(game_params *params, int tilesize,
 static void game_set_size(game_drawstate *ds, game_params *params,
                          int tilesize)
 {
-    int colh, guessh, x, y;
+    int colh, guessh;
 
     ds->pegsz = tilesize;
 
@@ -850,12 +851,12 @@ static void game_set_size(game_drawstate *ds, game_params *params,
     guessh = ((ds->pegsz + ds->gapsz) * params->nguesses);      /* guesses */
     guessh += ds->gapsz + ds->pegsz;                            /* solution */
 
-    game_compute_size(params, tilesize, &x, &y);
+    game_compute_size(params, tilesize, &ds->w, &ds->h);
     ds->colx = ds->border;
-    ds->coly = (y - colh) / 2;
+    ds->coly = (ds->h - colh) / 2;
 
     ds->guessx = ds->solnx = ds->border + ds->pegsz * 2;     /* border + colours */
-    ds->guessy = (y - guessh) / 2;
+    ds->guessy = (ds->h - guessh) / 2;
     ds->solny = ds->guessy + ((ds->pegsz + ds->gapsz) * params->nguesses) + ds->gapsz;
 
     assert(ds->pegsz > 0);
@@ -1262,7 +1263,7 @@ static int game_wants_statusbar(void)
     return FALSE;
 }
 
-static int game_timing_state(game_state *state)
+static int game_timing_state(game_state *state, game_ui *ui)
 {
     return TRUE;
 }