]> de.git.xonotic.org Git - xonotic/darkplaces.git/commitdiff
fix font parsing so adding more properties in the future will make them ignored,...
authordivverent <divverent@d7cf8633-e32d-0410-b094-e92efae38249>
Tue, 29 Jul 2008 09:48:43 +0000 (09:48 +0000)
committerdivverent <divverent@d7cf8633-e32d-0410-b094-e92efae38249>
Tue, 29 Jul 2008 09:48:43 +0000 (09:48 +0000)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@8430 d7cf8633-e32d-0410-b094-e92efae38249

gl_draw.c

index 6bb31b205e59b14fdd2d490d90e291dbf0e1d3e2..655b31f4cbe7966c54e03ad4d500dc0ff55ba476 100644 (file)
--- a/gl_draw.c
+++ b/gl_draw.c
@@ -638,20 +638,44 @@ static void LoadFont(qboolean override, const char *name, dp_font_t *fnt)
                        if(!COM_ParseToken_Simple(&p, false, false))
                                return;
 
-                       if(!strcmp(com_token, "extraspacing"))
+                       switch(*com_token)
                        {
-                               if(!COM_ParseToken_Simple(&p, false, false))
-                                       return;
-                               extraspacing = atof(com_token);
+                               case '0':
+                               case '1':
+                               case '2':
+                               case '3':
+                               case '4':
+                               case '5':
+                               case '6':
+                               case '7':
+                               case '8':
+                               case '9':
+                               case '+':
+                               case '-':
+                               case '.':
+                                       fnt->width_of[ch++] = atof(com_token) + extraspacing;
+                                       break;
+                               default:
+                                       if(!strcmp(com_token, "extraspacing"))
+                                       {
+                                               if(!COM_ParseToken_Simple(&p, false, false))
+                                                       return;
+                                               extraspacing = atof(com_token);
+                                       }
+                                       else if(!strcmp(com_token, "scale"))
+                                       {
+                                               if(!COM_ParseToken_Simple(&p, false, false))
+                                                       return;
+                                               scale = atof(com_token);
+                                       }
+                                       else
+                                       {
+                                               Con_Printf("Warning: skipped unknown font property %s\n", com_token);
+                                               if(!COM_ParseToken_Simple(&p, false, false))
+                                                       return;
+                                       }
+                                       break;
                        }
-                       else if(!strcmp(com_token, "scale"))
-                       {
-                               if(!COM_ParseToken_Simple(&p, false, false))
-                                       return;
-                               scale = atof(com_token);
-                       }
-                       else
-                               fnt->width_of[ch++] = atof(com_token) + extraspacing;
                }
 
                Mem_Free(widthbuf);