diff options
author | truelight <truelight@openttd.org> | 2007-11-11 12:26:44 +0000 |
---|---|---|
committer | truelight <truelight@openttd.org> | 2007-11-11 12:26:44 +0000 |
commit | d8d0babece3ab9a48e2311675ad8d7c9bd4e0872 (patch) | |
tree | a021ed28490d76d095e1ae3f996a51bd9f272ffd | |
parent | 592b0c4e514be6a952aef08564cc7284727b8807 (diff) | |
download | openttd-d8d0babece3ab9a48e2311675ad8d7c9bd4e0872.tar.xz |
(svn r11405) -Fix: in rare cases OpenTTD could segfault when resizing and scroll the main window (Rafal Rzepecki)
-rw-r--r-- | src/window.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/window.cpp b/src/window.cpp index 44dc9ae2a..f64446c69 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; |