From d71bba1a17d6b228e7dd8b437dccbd3f6bc4698c Mon Sep 17 00:00:00 2001 From: Ben Harris Date: Wed, 11 Jan 2023 23:11:46 +0000 Subject: Limit maximum grid size in Loopy Every grid shape has its own limit, so this involved adding a new interface between loopy.c and grid.c. The limits are based on ensuring that the co-ordinate system of the grid doesn't overflow INT_MAX and neither do the lengths of the face and dot arrays. Though now I come to look at it I think the actual limits of grid.c are much lower. Hmm. --- grid.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'grid.h') diff --git a/grid.h b/grid.h index 57c739d..69108d4 100644 --- a/grid.h +++ b/grid.h @@ -115,6 +115,8 @@ typedef struct grid { typedef enum grid_type { GRIDGEN_LIST(ENUM) GRID_TYPE_MAX } grid_type; #undef ENUM +const char *grid_validate_params(grid_type type, int width, int height); + /* Free directly after use if non-NULL. Will never contain an underscore * (so clients can safely use that as a separator). */ char *grid_new_desc(grid_type type, int width, int height, random_state *rs); -- cgit v1.1