Mercurial > hg > openttd
changeset 17991:ba8f20e7b16d draft
(svn r22800) -Fix (r22796): don't run the scanning threaded when there is no reason to do so (no UI to update)
author | rubidium <rubidium@openttd.org> |
---|---|
date | Sun, 21 Aug 2011 13:19:06 +0000 |
parents | 470c1caa3d43 |
children | 05ecda28efc6 |
files | src/newgrf_config.cpp |
diffstat | 1 files changed, 5 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/newgrf_config.cpp +++ b/src/newgrf_config.cpp @@ -19,6 +19,8 @@ #include "window_func.h" #include "progress.h" #include "thread/thread.h" +#include "blitter/factory.hpp" +#include "network/network.h" #include "fileio_func.h" #include "fios.h" @@ -694,9 +696,11 @@ */ void ScanNewGRFFiles(NewGRFScanCallback *callback) { - if (!ThreadObject::New(&DoScanNewGRFFiles, callback, NULL)) { + if (BlitterFactoryBase::GetCurrentBlitter()->GetScreenDepth() == 0 || _network_dedicated || !ThreadObject::New(&DoScanNewGRFFiles, callback, NULL)) { _modal_progress_work_mutex->EndCritical(); + _modal_progress_paint_mutex->EndCritical(); DoScanNewGRFFiles(callback); + _modal_progress_paint_mutex->BeginCritical(); _modal_progress_work_mutex->BeginCritical(); } }