From d8d0babece3ab9a48e2311675ad8d7c9bd4e0872 Mon Sep 17 00:00:00 2001 From: truelight Date: Sun, 11 Nov 2007 12:26:44 +0000 Subject: [PATCH] (svn r11405) -Fix: in rare cases OpenTTD could segfault when resizing and scroll the main window (Rafal Rzepecki) --- src/window.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/window.cpp b/src/window.cpp index 44dc9ae2a0..f64446c69c 100644 --- a/src/window.cpp +++ b/src/window.cpp @@ -1466,6 +1466,12 @@ static bool HandleViewportScroll() w = FindWindowFromPt(_cursor.pos.x, _cursor.pos.y); + if (!(_right_button_down || scrollwheel_scrolling) || w == NULL) { + _cursor.fix_at = false; + _scrolling_viewport = false; + return true; + } + if (WP(w, vp_d).follow_vehicle != INVALID_VEHICLE && w == FindWindowById(WC_MAIN_WINDOW, 0)) { /* If the main window is following a vehicle, then first let go of it! */ const Vehicle *veh = GetVehicle(WP(w, vp_d).follow_vehicle); @@ -1473,12 +1479,6 @@ static bool HandleViewportScroll() return true; } - if (!(_right_button_down || scrollwheel_scrolling) || w == NULL) { - _cursor.fix_at = false; - _scrolling_viewport = false; - return true; - } - if (_patches.reverse_scroll) { e.we.scroll.delta.x = -_cursor.delta.x; e.we.scroll.delta.y = -_cursor.delta.y;