mirror of
git://git.tartarus.org/simon/puzzles.git
synced 2025-04-21 16:05:44 -07:00
Cleanups and memory leak fixes from James H.
[originally from svn r6099]
This commit is contained in:
@ -1093,6 +1093,7 @@ static game_state *dup_game(game_state *state)
|
|||||||
static void free_game(game_state *state)
|
static void free_game(game_state *state)
|
||||||
{
|
{
|
||||||
sfree(state->grid);
|
sfree(state->grid);
|
||||||
|
sfree(state->edges);
|
||||||
if (--state->numbers->refcount <= 0) {
|
if (--state->numbers->refcount <= 0) {
|
||||||
sfree(state->numbers->numbers);
|
sfree(state->numbers->numbers);
|
||||||
sfree(state->numbers);
|
sfree(state->numbers);
|
||||||
@ -1154,7 +1155,7 @@ static char *solve_game(game_state *state, game_state *currstate,
|
|||||||
int p2 = (i & 1) ? p1+1 : p1+w;
|
int p2 = (i & 1) ? p1+1 : p1+w;
|
||||||
|
|
||||||
extra = sprintf(buf, ";%c%d,%d",
|
extra = sprintf(buf, ";%c%d,%d",
|
||||||
v==-1 ? 'E' : 'D', p1, p2);
|
(int)(v==-1 ? 'E' : 'D'), p1, p2);
|
||||||
|
|
||||||
if (retlen + extra + 1 >= retsize) {
|
if (retlen + extra + 1 >= retsize) {
|
||||||
retsize = retlen + extra + 256;
|
retsize = retlen + extra + 256;
|
||||||
@ -1257,7 +1258,7 @@ static char *interpret_move(game_state *state, game_ui *ui, game_drawstate *ds,
|
|||||||
(state->grid[d1] != d1 || state->grid[d2] != d2))
|
(state->grid[d1] != d1 || state->grid[d2] != d2))
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
sprintf(buf, "%c%d,%d", button == RIGHT_BUTTON ? 'E' : 'D', d1, d2);
|
sprintf(buf, "%c%d,%d", (int)(button == RIGHT_BUTTON ? 'E' : 'D'), d1, d2);
|
||||||
return dupstr(buf);
|
return dupstr(buf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user