From e336513be755159158c5ba017c91b018ad4cd36c Mon Sep 17 00:00:00 2001 From: Ben Harris Date: Mon, 13 Feb 2023 20:17:58 +0000 Subject: [PATCH] Loopy: free the grid description string if it's invalid --- loopy.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/loopy.c b/loopy.c index 1e041f9..18da2e8 100644 --- a/loopy.c +++ b/loopy.c @@ -777,10 +777,13 @@ static const char *validate_desc(const game_params *params, const char *desc) * know is the precise number of faces. */ grid_desc = extract_grid_desc(&desc); ret = grid_validate_desc(grid_types[params->type], params->w, params->h, grid_desc); - if (ret) return ret; + if (ret) { + sfree(grid_desc); + return ret; + } g = loopy_generate_grid(params, grid_desc); - if (grid_desc) sfree(grid_desc); + sfree(grid_desc); for (; *desc; ++desc) { if ((*desc >= '0' && *desc <= '9') || (*desc >= 'A' && *desc <= 'Z')) {