From 2f4bd399fe893cac2c7fc16903d50a52d8ef8f2b Mon Sep 17 00:00:00 2001 From: Darkvater Date: Tue, 15 Aug 2006 00:26:24 +0000 Subject: [PATCH] (svn r5903) -Fix [FS#170]: Changing patch settings through the console didn't accept on/off or true/false. --- settings.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/settings.c b/settings.c index 92cdffbea3..3d1c5ae69b 100644 --- a/settings.c +++ b/settings.c @@ -1597,7 +1597,10 @@ const SettingDesc *GetPatchFromName(const char *name, uint *i) } /* Those 2 functions need to be here, else we have to make some stuff non-static - * and besides, it is also better to keep stuff like this at the same place */ + * and besides, it is also better to keep stuff like this at the same place + * XXX - Perhaps back to console[_cmds].c? They are console functions after all */ +extern bool GetArgumentInteger(uint32 *value, const char *arg); + void IConsoleSetPatchSetting(const char *name, const char *value) { int32 val; @@ -1611,7 +1614,8 @@ void IConsoleSetPatchSetting(const char *name, const char *value) return; } - sscanf(value, "%d", &val); + if (!GetArgumentInteger(&val, value)) return; + patches_ptr = (_game_mode == GM_MENU) ? &_patches_newgame : &_patches; ptr = ini_get_variable(&sd->save, patches_ptr);