diff options
author | rubidium <rubidium@openttd.org> | 2007-12-29 23:49:48 +0000 |
---|---|---|
committer | rubidium <rubidium@openttd.org> | 2007-12-29 23:49:48 +0000 |
commit | 50b6804b3b43b4baf5fdb5566a34e7e111f5a517 (patch) | |
tree | bda4fde219cde9e0fba15c082747a07c3c98fc3e | |
parent | 6da72ec156305de77277fbb834d0bd3905254fd8 (diff) | |
download | openttd-50b6804b3b43b4baf5fdb5566a34e7e111f5a517.tar.xz |
(svn r11721) -Fix: do not disable NewGRFs for 'eternity' during games.
-rw-r--r-- | src/newgrf.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/newgrf.cpp b/src/newgrf.cpp index 42bd6088c..431f7464a 100644 --- a/src/newgrf.cpp +++ b/src/newgrf.cpp @@ -5607,6 +5607,17 @@ void LoadNewGRF(uint load_index, uint file_index) ResetNewGRFData(); + /* + * Reset the status of all files, so we can 'retry' to load them. + * This is needed when one for example rearranges the NewGRFs in-game + * and a previously disabled NewGRF becomes useable. If it would not + * be reset, the NewGRF would remain disabled even though it should + * have been enabled. + */ + for (GRFConfig *c = _grfconfig; c != NULL; c = c->next) { + if (c->status != GCS_NOT_FOUND) c->status = GCS_UNKNOWN; + } + /* Load newgrf sprites * in each loading stage, (try to) open each file specified in the config * and load information from it. */ |