From da220a77d1793edd14144fd96584b7f461f06dfb Mon Sep 17 00:00:00 2001 From: Ben Harris Date: Tue, 10 Jan 2023 21:20:35 +0000 Subject: [PATCH] Last-ditch grid-size limit for Flood At least prevent integer overflow when constructing the grid. --- flood.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/flood.c b/flood.c index eeca88b..67181a8 100644 --- a/flood.c +++ b/flood.c @@ -31,6 +31,7 @@ #include #include #include +#include #include #include "puzzles.h" @@ -209,6 +210,8 @@ static const char *validate_params(const game_params *params, bool full) { if (params->w < 2 && params->h < 2) return "Grid must contain at least two squares"; + if (params->w > INT_MAX / params->h) + return "Width times height must not be unreasonably large"; if (params->colours < 3 || params->colours > 10) return "Must have between 3 and 10 colours"; if (params->leniency < 0)