Map: add missing sresize in new_game_desc().

Every time we append to the string 'ret', we check first that there's
enough space, and realloc it larger if it's getting close to full.
Except that I missed one case at the join between the two parts of the
encoding.

(Spotted because apparently on someone's build platform this led to a
compiler warning that 'ret' might be null. I think _that's_ not a
serious worry, but the missing resize was definitely unintentional.)
This commit is contained in:
Simon Tatham
2021-12-11 11:03:20 +00:00
parent 640f9235c7
commit 3e00615845

4
map.c
View File

@ -1659,6 +1659,10 @@ static char *new_game_desc(const game_params *params, random_state *rs,
} }
} }
if (retlen + 10 >= retsize) {
retsize = retlen + 256;
ret = sresize(ret, retsize, char);
}
ret[retlen++] = 'a'-1 + run; ret[retlen++] = 'a'-1 + run;
ret[retlen++] = ','; ret[retlen++] = ',';