# HG changeset patch # User rubidium # Date 2009-01-23 23:40:12 # Node ID 571c959dc9edc1aff7e6ef0156e43321a55ab771 # Parent 8e22435ae733cb2efa07e00fe3f7eb842fe81349 (svn r15246) -Fix [FS#2577]: close all windows *before* starting a new game/loading a game instead of doing that as one of the latest steps of loading the game. This caused, in some cases, the NewGRF settings to be reset when the game was already loaded resulting in instant desyncs when joining a network game diff --git a/src/misc.cpp b/src/misc.cpp --- a/src/misc.cpp +++ b/src/misc.cpp @@ -30,6 +30,7 @@ #include "tilehighlight_func.h" #include "core/bitmath_func.hpp" #include "network/network_func.h" +#include "window_func.h" #include "table/strings.h" #include "table/sprites.h" @@ -60,6 +61,10 @@ void InitializeOldNames(); void InitializeGame(uint size_x, uint size_y, bool reset_date) { + /* Make sure there isn't any window that can influence anything + * related to the new game we're about to start/load. */ + UnInitWindowSystem(); + AllocateMap(size_x, size_y); SetObjectToPlace(SPR_CURSOR_ZZZ, PAL_NONE, VHM_NONE, WC_MAIN_WINDOW, 0);