]> skyeroc.xyz Git - dgamelaunch/commitdiff
userprefs - actually allow setpref() to be called from the config
authorTangles <andyrthomson@gmail.com>
Wed, 22 Jan 2020 13:35:53 +0000 (00:35 +1100)
committerTangles <andyrthomson@gmail.com>
Wed, 22 Jan 2020 13:35:53 +0000 (00:35 +1100)
config.l
dgamelaunch.h
dgl-common.c

index 7d5d6deb6556cf5a17ada496ea8669ac1a7f2bf9..73def409ebd42eff5dd079674a5ef727ea4b3a2e 100644 (file)
--- a/config.l
+++ b/config.l
@@ -127,6 +127,7 @@ exec                { yylval.i = DGLCMD_EXEC;   return TYPE_DGLCMD2; }
 chpasswd       { yylval.i = DGLCMD_CHPASSWD;   return TYPE_DGLCMD0; }
 chmail         { yylval.i = DGLCMD_CHMAIL;     return TYPE_DGLCMD0; }
 setprefpath    { yylval.i = DGLCMD_SETPREFPATH; return TYPE_DGLCMD1; }
+setpref        { yylval.i = DGLCMD_SETPREF;    return TYPE_DGLCMD2; }
 readprefs      { yylval.i = DGLCMD_READPREFS;  return TYPE_DGLCMD0; }
 writeprefs     { yylval.i = DGLCMD_WRITEPREFS; return TYPE_DGLCMD0; }
 watch_menu     { yylval.i = DGLCMD_WATCH_MENU; return TYPE_DGLCMD0; }
index a00d8a6a8f66f3118d7a7bdca038c03ad1c2f086..d8516121362e48ffb556003600fc9bd67991eaa2 100644 (file)
@@ -68,6 +68,7 @@ typedef enum
     DGLCMD_EXEC,       /* exec foo bar */
     DGLCMD_SETENV,     /* setenv foo bar */
     DGLCMD_SETPREFPATH,        /* setprefpath foo */
+    DGLCMD_SETPREF,    /* setpref foo bar */
     DGLCMD_READPREFS,  /* readprefs */
     DGLCMD_WRITEPREFS, /* writeprefs */
     DGLCMD_WATCH_MENU,  /* watch_menu */
index 0033622474b5c4e00b8c5fbb22e21ea050a07fb6..0bccdeb61ddb1934031e2b87602bebc626b58ce2 100644 (file)
@@ -384,6 +384,9 @@ dgl_exec_cmdqueue_w(struct dg_cmdpart *queue, int game, struct dg_user *me, char
                 userpref_path = strdup(dgl_format_str(-1, me, p1, playername));
             }
             break;
+        case DGLCMD_SETPREF:
+            if (p1 && p2) setpref(p1, p2);
+            break;
         case DGLCMD_READPREFS:
             if (loggedin && userpref_path) readprefs();
            break;