From d685ca0619cdbaf61623b673d26a2c9aa8b5b85e Mon Sep 17 00:00:00 2001 From: rubidium Date: Sun, 3 May 2009 15:44:05 +0000 Subject: (svn r16220) -Fix [FS#2862]: possible crashes when quiting OpenTTD or forcing resizes/redraws of the screen during map generation --- src/openttd.cpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/openttd.cpp') diff --git a/src/openttd.cpp b/src/openttd.cpp index 800b791ab..9dac52fe9 100644 --- a/src/openttd.cpp +++ b/src/openttd.cpp @@ -50,6 +50,7 @@ #include "elrail_func.h" #include "rev.h" #include "highscore.h" +#include "thread.h" #include "newgrf_commons.h" @@ -655,6 +656,10 @@ int ttd_main(int argc, char *argv[]) InitializeGUI(); IConsoleCmdExec("exec scripts/autoexec.scr 0"); + /* Take our initial lock on whatever we might want to do! */ + _genworld_paint_mutex->BeginCritical(); + _genworld_mapgen_mutex->BeginCritical(); + GenerateWorld(GW_EMPTY, 64, 64); // Make the viewport initialization happy WaitTillGeneratedWorld(); -- cgit v1.2.3-70-g09d2