X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/puzzles/blobdiff_plain/2c580e640c7a19be5700be84b2429a5aea966a2f..77dcb2a600afa28bd8a197bf63ff6a0898e59436:/galaxies.c diff --git a/galaxies.c b/galaxies.c index b80515d..d8906b6 100644 --- a/galaxies.c +++ b/galaxies.c @@ -365,7 +365,7 @@ static char *game_text_format(game_state *state) case s_tile: if (sp->flags & F_TILE_ASSOC) { space *dot = sp2dot(state, sp->x, sp->y); - if (dot->flags & F_DOT) + if (dot && dot->flags & F_DOT) *p++ = (dot->flags & F_DOT_BLACK) ? 'B' : 'W'; else *p++ = '?'; /* association with not-a-dot. */ @@ -1450,6 +1450,7 @@ generate: state = copy2; } } + sfree(posns); } #endif @@ -3347,6 +3348,11 @@ static float game_flash_length(game_state *oldstate, game_state *newstate, return 0.0F; } +static int game_status(game_state *state) +{ + return state->completed ? +1 : 0; +} + static int game_timing_state(game_state *state, game_ui *ui) { return TRUE; @@ -3567,6 +3573,7 @@ const struct game thegame = { game_redraw, game_anim_length, game_flash_length, + game_status, #ifdef EDITOR FALSE, FALSE, NULL, NULL, TRUE, /* wants_statusbar */