From cd692716847c3997b9f427b5db25e7426888ddbc Mon Sep 17 00:00:00 2001 From: Pasi Kallinen Date: Thu, 25 Feb 2010 16:52:25 +0000 Subject: [PATCH] Add short game name (%s) for string substitutions. From Marc H. Thoben git-svn-id: svn://katsu.triplehelix.org/dgamelaunch/trunk@524 db0b04b0-f4d1-0310-9a6d-de3e77497b0e --- dgl-common.c | 7 +++++++ examples/dgamelaunch.conf | 1 + 2 files changed, 8 insertions(+) diff --git a/dgl-common.c b/dgl-common.c index 2ccb723..67581e8 100644 --- a/dgl-common.c +++ b/dgl-common.c @@ -113,6 +113,7 @@ dgl_find_menu(char *menuname) * %n == user name (string; gotten from 'me', or from 'plrname' if 'me' is null) * %r == chroot (string) (aka "dglroot" config var) * %g == game name + * %s == short game name */ char * dgl_format_str(int game, struct dg_user *me, char *str, char *plrname) @@ -148,6 +149,12 @@ dgl_format_str(int game, struct dg_user *me, char *str, char *plrname) while (*p != '\0') p++; break; + case 's': + if (game >= 0 && game < num_games && myconfig[game]) snprintf (p, end + 1 - p, "%s", myconfig[game]->shortname); + else return NULL; + while (*p != '\0') + p++; + break; case 'r': snprintf (p, end + 1 - p, "%s", globalconfig.dglroot); while (*p != '\0') diff --git a/examples/dgamelaunch.conf b/examples/dgamelaunch.conf index 1bf44d1..868e644 100644 --- a/examples/dgamelaunch.conf +++ b/examples/dgamelaunch.conf @@ -105,6 +105,7 @@ lockfile = "/dgl-lock" # %n = user nick, if user is logged in # %u = shed_uid, as defined above, but numeric # %g = game name, if user has selected a game. +# %s = short game name, if user has selected a game. # # eg. commands[login] = mkdir "foo", unlink "bar", setenv "Z" "foo" #