summaryrefslogtreecommitdiff
path: root/src/saveload
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2009-10-03 14:48:12 +0000
committerrubidium <rubidium@openttd.org>2009-10-03 14:48:12 +0000
commitafed4330dac0dd738eab604274952901dfba5537 (patch)
tree5f720fe56787aed7b75b092d2b75318b2849f9fb /src/saveload
parent12a814f487883b291c17bba69a5cd41ebf862708 (diff)
downloadopenttd-afed4330dac0dd738eab604274952901dfba5537.tar.xz
(svn r17685) -Fix: autounpausing kept trying to unpause a loaded game that was paused due to an error. Just reject such savegames in dedicated servers.
Diffstat (limited to 'src/saveload')
-rw-r--r--src/saveload/afterload.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/saveload/afterload.cpp b/src/saveload/afterload.cpp
index 0124740ba..e4a70a9f7 100644
--- a/src/saveload/afterload.cpp
+++ b/src/saveload/afterload.cpp
@@ -408,6 +408,12 @@ bool AfterLoadGame()
if (CheckSavegameVersion(119)) {
_pause_mode = (_pause_mode == 2) ? PM_PAUSED_NORMAL : PM_UNPAUSED;
+ } else if (_network_dedicated && (_pause_mode & PM_PAUSED_ERROR) != 0) {
+ DEBUG(net, 0, "The loading savegame was paused due to an error state.");
+ DEBUG(net, 0, " The savegame cannot be used for multiplayer!");
+ /* Restore the signals */
+ ResetSignalHandlers();
+ return false;
}
/* in very old versions, size of train stations was stored differently */