aboutsummaryrefslogtreecommitdiff
path: root/loopy.c
diff options
context:
space:
mode:
authorSimon Tatham <anakin@pobox.com>2013-04-12 17:11:49 +0000
committerSimon Tatham <anakin@pobox.com>2013-04-12 17:11:49 +0000
commit0b93de904a98f119b1a95d3a53029f1ed4bfb9b3 (patch)
treee1fef5c0a006feb7c2a631c7e5c81487221734d7 /loopy.c
parent383c15794a517a4e6dc0b7364edac1f7056cee82 (diff)
downloadpuzzles-0b93de904a98f119b1a95d3a53029f1ed4bfb9b3.zip
puzzles-0b93de904a98f119b1a95d3a53029f1ed4bfb9b3.tar.gz
puzzles-0b93de904a98f119b1a95d3a53029f1ed4bfb9b3.tar.bz2
puzzles-0b93de904a98f119b1a95d3a53029f1ed4bfb9b3.tar.xz
Add 'const' to the game_params arguments in validate_desc and
new_desc. Oddities in the 'make test' output brought to my attention that a few puzzles have been modifying their input game_params for various reasons; they shouldn't do that, because that's the game_params held permanently by the midend and it will affect subsequent game generations if they modify it. So now those arguments are const, and all the games which previously modified their game_params now take a copy and modify that instead. [originally from svn r9830]
Diffstat (limited to 'loopy.c')
-rw-r--r--loopy.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/loopy.c b/loopy.c
index 6b3d53e..68cf646 100644
--- a/loopy.c
+++ b/loopy.c
@@ -231,7 +231,7 @@ struct game_drawstate {
char *clue_satisfied;
};
-static char *validate_desc(game_params *params, char *desc);
+static char *validate_desc(const game_params *params, char *desc);
static int dot_order(const game_state* state, int i, char line_type);
static int face_order(const game_state* state, int i, char line_type);
static solver_state *solve_game_rec(const solver_state *sstate);
@@ -277,7 +277,7 @@ static const struct {
/* Generates a (dynamically allocated) new grid, according to the
* type and size requested in params. Does nothing if the grid is already
* generated. */
-static grid *loopy_generate_grid(game_params *params, char *grid_desc)
+static grid *loopy_generate_grid(const game_params *params, char *grid_desc)
{
return grid_new(grid_types[params->type], params->w, params->h, grid_desc);
}
@@ -713,7 +713,7 @@ static char *extract_grid_desc(char **desc)
/* We require that the params pass the test in validate_params and that the
* description fills the entire game area */
-static char *validate_desc(game_params *params, char *desc)
+static char *validate_desc(const game_params *params, char *desc)
{
int count = 0;
grid *g;
@@ -1364,7 +1364,7 @@ static game_state *remove_clues(game_state *state, random_state *rs,
}
-static char *new_game_desc(game_params *params, random_state *rs,
+static char *new_game_desc(const game_params *params, random_state *rs,
char **aux, int interactive)
{
/* solution and description both use run-length encoding in obvious ways */