# HG changeset patch # User smatz # Date 1200235348 0 # Node ID 359d451c24ef2fcba9be8608fd7ed94a240b33a2 # Parent 5613b863190d20009aebca784cec6dedf87c80e5 (svn r11835) -Fix: mark depot, viewports, vehicle lists and vehicle details dirty when a train crashes diff --git a/src/train_cmd.cpp b/src/train_cmd.cpp --- a/src/train_cmd.cpp +++ b/src/train_cmd.cpp @@ -2779,12 +2779,19 @@ v->u.rail.crash_anim_pos++; - Vehicle *u = v; + InvalidateWindowWidget(WC_VEHICLE_VIEW, v->index, STATUS_BAR); + InvalidateWindow(WC_VEHICLE_DETAILS, v->index); + + if (v->u.rail.track == TRACK_BIT_DEPOT) { + InvalidateWindow(WC_VEHICLE_DEPOT, v->tile); + } + + RebuildVehicleLists(); + BEGIN_ENUM_WAGONS(v) v->vehstatus |= VS_CRASHED; + MarkAllViewportsDirty(v->left_coord, v->top_coord, v->right_coord + 1, v->bottom_coord + 1); END_ENUM_WAGONS(v) - - InvalidateWindowWidget(WC_VEHICLE_VIEW, u->index, STATUS_BAR); } static uint CountPassengersInTrain(const Vehicle* v)