diff --git a/samegame.c b/samegame.c index 3597e19..3abd042 100644 --- a/samegame.c +++ b/samegame.c @@ -67,6 +67,7 @@ #include #include #include +#include #include #include "puzzles.h" @@ -285,6 +286,8 @@ static const char *validate_params(const game_params *params, bool full) { if (params->w < 1 || params->h < 1) return "Width and height must both be positive"; + if (params->w > INT_MAX / params->h) + return "Width times height must not be unreasonably large"; if (params->ncols > 9) return "Maximum of 9 colours";