]> skyeroc.xyz Git - dgamelaunch/commitdiff
Fix a bug where more than one defined game didn't show up or showed gibberish
authorPasi Kallinen <paxed@alt.org>
Sat, 23 Aug 2008 12:50:43 +0000 (12:50 +0000)
committerPasi Kallinen <paxed@alt.org>
Sat, 23 Aug 2008 12:50:43 +0000 (12:50 +0000)
git-svn-id: svn://katsu.triplehelix.org/dgamelaunch/trunk@452 db0b04b0-f4d1-0310-9a6d-de3e77497b0e

config.y
dgl-common.c

index 7750514006b63d34b6c2dba51fb98e3bfa7753f6..f051b99cbb8625e6467c747ca5ac26589cac0bff 100644 (file)
--- a/config.y
+++ b/config.y
@@ -454,8 +454,8 @@ definegame : TYPE_DEFINE_GAME '{'
        }
        game_definitions '}'
        {
-           num_games = ncnf;
            ncnf++;
+           num_games = ncnf;
        }
        ;
 
index 96c3dba3e56234b2ac4f5917ba29c22e3618d65d..50750cae6def4c9b9e08c29218c540277ec614d1 100644 (file)
@@ -117,7 +117,7 @@ dgl_format_str(int game, struct dg_user *me, char *str)
                    p++;
                break;
            case 'g':
-               if (game >= 0 && game <=num_games && myconfig[game]) snprintf (p, end + 1 - p, "%s", myconfig[game]->game_name);
+               if (game >= 0 && game < num_games && myconfig[game]) snprintf (p, end + 1 - p, "%s", myconfig[game]->game_name);
                while (*p != '\0')
                    p++;
                break;
@@ -381,7 +381,7 @@ populate_games (int xgame, int *l)
 
   len = 0;
 
-  for (game = ((xgame < 0) ? 0 : xgame); game <= ((xgame < 0) ? num_games : xgame); game++) {
+  for (game = ((xgame < 0) ? 0 : xgame); game < ((xgame <= 0) ? num_games : (xgame+1)); game++) {
 
    slen = strlen(globalconfig.dglroot) + strlen(myconfig[game]->inprogressdir) + 1;
    dir = malloc(slen);