From 056405ec880bda78929d5a163c9de0adfc31341b Mon Sep 17 00:00:00 2001 From: simon Date: Thu, 4 Aug 2005 18:09:48 +0000 Subject: [PATCH] Environment-based configuration wasn't sensibly usable in games with spaces in the name. Fixed. (One day I really must get round to turning this into a proper config mechanism.) git-svn-id: svn://svn.tartarus.org/sgt/puzzles@6163 cda61777-01e9-0310-a592-d414129be87e --- midend.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/midend.c b/midend.c index f7d1aca..ceef686 100644 --- a/midend.c +++ b/midend.c @@ -722,11 +722,13 @@ float *midend_colours(midend_data *me, int *ncolours) for (i = 0; i < *ncolours; i++) { char buf[80], *e; unsigned int r, g, b; - int j; + int j, k; sprintf(buf, "%s_COLOUR_%d", me->ourgame->name, i); - for (j = 0; buf[j]; j++) - buf[j] = toupper((unsigned char)buf[j]); + for (j = k = 0; buf[j]; j++) + if (!isspace((unsigned char)buf[j])) + buf[k++] = toupper((unsigned char)buf[j]); + buf[k] = '\0'; if ((e = getenv(buf)) != NULL && sscanf(e, "%2x%2x%2x", &r, &g, &b) == 3) { ret[i*3 + 0] = r / 255.0; @@ -772,11 +774,13 @@ int midend_num_presets(midend_data *me) * encoded parameter strings. */ char buf[80], *e, *p; - int j; + int j, k; sprintf(buf, "%s_PRESETS", me->ourgame->name); - for (j = 0; buf[j]; j++) - buf[j] = toupper((unsigned char)buf[j]); + for (j = k = 0; buf[j]; j++) + if (!isspace((unsigned char)buf[j])) + buf[k++] = toupper((unsigned char)buf[j]); + buf[k] = '\0'; if ((e = getenv(buf)) != NULL) { p = e = dupstr(e); -- 2.11.0