From 8bfb955d4bab8c6b6a54b398519bf4fd54f22502 Mon Sep 17 00:00:00 2001 From: Darkvater Date: Tue, 2 May 2006 12:44:55 +0000 Subject: [PATCH] (svn r4662) - Backport from trunk (r4192): Fix: In the depot, moving wagons from the end of a very long train to a short train where the short train was scrolled off the window would cause a game crash. --- train_gui.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/train_gui.c b/train_gui.c index cf44b3d94e..e613e40465 100644 --- a/train_gui.c +++ b/train_gui.c @@ -518,13 +518,10 @@ found_it: return (x >= -10) ? -2 : -1; // skip vehicles that are scrolled off the left side - while (skip--) v = v->next; + while (v != NULL && skip--) v = v->next; /* find the vehicle in this row that was clicked */ - while ((x -= WagonLengthToPixels(v->u.rail.cached_veh_length)) >= 0) { - v = v->next; - if (v == NULL) break; - } + while (v != NULL && (x -= WagonLengthToPixels(v->u.rail.cached_veh_length)) >= 0) v = v->next; // if an articulated part was selected, find its parent while (v != NULL && IsArticulatedPart(v)) v = GetPrevVehicleInChain(v);