chiark / gitweb /
Environment-based configuration wasn't sensibly usable in games with
authorSimon Tatham <anakin@pobox.com>
Thu, 4 Aug 2005 18:09:48 +0000 (18:09 +0000)
committerSimon Tatham <anakin@pobox.com>
Thu, 4 Aug 2005 18:09:48 +0000 (18:09 +0000)
spaces in the name. Fixed. (One day I really must get round to
turning this into a proper config mechanism.)

[originally from svn r6163]

midend.c

index f7d1acaac53975e8378eb9c08655a0c9a1685b20..ceef686bf32af32f3cb7796cfd72fcbd0aabf863 100644 (file)
--- 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);