summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpeter1138 <peter1138@openttd.org>2009-12-03 08:24:39 +0000
committerpeter1138 <peter1138@openttd.org>2009-12-03 08:24:39 +0000
commit3addf58f30c2dd4fa850611af11d7a897989722b (patch)
tree01a7c0cd6a1b1861750e3626924fc6c6ad4e108d
parent5c1fdfdd03d3b8f7138e891b8bc30dcb0a2a104f (diff)
downloadopenttd-3addf58f30c2dd4fa850611af11d7a897989722b.tar.xz
(svn r18390) -Fix (r17776): [SDL] Reinstate pointer update on 'idle' loop.
-rw-r--r--src/video/sdl_v.cpp20
1 files changed, 12 insertions, 8 deletions
diff --git a/src/video/sdl_v.cpp b/src/video/sdl_v.cpp
index f9ef164c0..1af499d0a 100644
--- a/src/video/sdl_v.cpp
+++ b/src/video/sdl_v.cpp
@@ -593,19 +593,23 @@ void VideoDriver_SDL::MainLoop()
CheckPaletteAnim();
pal_tick = 1;
}
-
- /* End of the critical part. */
- if (_draw_threaded && !IsGeneratingWorld()) {
- _draw_mutex->SendSignal();
- } else {
- /* Oh, we didn't have threads, then just draw unthreaded */
- DrawSurfaceToScreen();
- }
} else {
/* Release the thread while sleeping */
if (_draw_threaded) _draw_mutex->EndCritical();
CSleep(1);
if (_draw_threaded) _draw_mutex->BeginCritical();
+
+ _screen.dst_ptr = _sdl_screen->pixels;
+ NetworkDrawChatMessage();
+ DrawMouseCursor();
+ }
+
+ /* End of the critical part. */
+ if (_draw_threaded && !IsGeneratingWorld()) {
+ _draw_mutex->SendSignal();
+ } else {
+ /* Oh, we didn't have threads, then just draw unthreaded */
+ DrawSurfaceToScreen();
}
}