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);