From e20e4f95b80d25a93195ec190bd2140d97c0056a Mon Sep 17 00:00:00 2001 From: Darkvater Date: Mon, 7 Aug 2006 09:32:29 +0000 Subject: [PATCH] (svn r5800) - Fix: When directories were changed in 'Play Scenario', pressing 'New Game' showed scenarios from that directory, not the default one. Bug has been present for a pretty long time, weird nobody noticed this. --- fios.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/fios.c b/fios.c index 1b1c1af2a3..e211929602 100644 --- a/fios.c +++ b/fios.c @@ -357,14 +357,15 @@ static byte FiosGetScenarioListCallback(int mode, const char *file, const char * */ FiosItem *FiosGetScenarioList(int mode) { - static char *_fios_scn_path = NULL; + static char *fios_scn_path = NULL; - if (_fios_scn_path == NULL) { - _fios_scn_path = malloc(MAX_PATH); - ttd_strlcpy(_fios_scn_path, _path.scenario_dir, MAX_PATH); + /* Copy the default path on first run or on 'New Game' */ + if (mode == SLD_NEW_GAME || fios_scn_path == NULL) { + if (fios_scn_path == NULL) fios_scn_path = malloc(MAX_PATH); + ttd_strlcpy(fios_scn_path, _path.scenario_dir, MAX_PATH); } - _fios_path = _fios_scn_path; + _fios_path = fios_scn_path; return FiosGetFileList(mode, &FiosGetScenarioListCallback); }