ref: 71966d06a29099e12aefde94c4c7a81a390ccd4a
parent: c8145f3bba1681a4b85e99dd0749d9c434393955
author: Simon Tatham <anakin@pobox.com>
date: Sun Sep 18 13:00:07 EDT 2005
Bug fix from James H: prevent LINEWIDTH ever reaching zero. [originally from svn r6331]
--- a/loopy.c
+++ b/loopy.c
@@ -66,7 +66,7 @@
#define PREFERRED_TILE_SIZE 32
#define TILE_SIZE (ds->tilesize)
-#define LINEWIDTH TILE_SIZE / 16
+#define LINEWIDTH (ds->linewidth)
#define BORDER (TILE_SIZE / 2)
#define FLASH_TIME 0.5F
@@ -2078,7 +2078,7 @@
struct game_drawstate {
int started;
- int tilesize;
+ int tilesize, linewidth;
int flashing;
char *hl, *vl;
char *clue_error;
@@ -2360,6 +2360,7 @@
game_params *params, int tilesize)
{
ds->tilesize = tilesize;
+ ds->linewidth = max(1,tilesize/16);
}
static float *game_colours(frontend *fe, game_state *state, int *ncolours)
@@ -2388,7 +2389,7 @@
{
struct game_drawstate *ds = snew(struct game_drawstate);
- ds->tilesize = 0;
+ ds->tilesize = ds->linewidth = 0;
ds->started = 0;
ds->hl = snewn(HL_COUNT(state), char);
ds->vl = snewn(VL_COUNT(state), char);