From c53e0d386793840ad84b8bbcb4760cfb2b6897d4 Mon Sep 17 00:00:00 2001 From: Ben Harris Date: Tue, 10 Jan 2023 20:39:06 +0000 Subject: [PATCH] Last-ditch maximum size limit for Tracks This makes sure that width * height <= INT_MAX, which it rather needs to be. --- tracks.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tracks.c b/tracks.c index 516fbef..674be4a 100644 --- a/tracks.c +++ b/tracks.c @@ -20,6 +20,7 @@ #include #include #include +#include #include #include "puzzles.h" @@ -196,6 +197,8 @@ static const char *validate_params(const game_params *params, bool full) */ if (params->w < 4 || params->h < 4) return "Width and height must both be at least four"; + if (params->w > INT_MAX / params->h) + return "Width times height must not be unreasonably large"; return NULL; }