changeset 11042:3f6dbfd6e903 draft

(svn r15382) -Fix [FS#2466]: multiple vehicles could be filling the timetable and only the data from one vehicle would be taken. Now only allow one to be filling at a time.
author rubidium <rubidium@openttd.org>
date Fri, 06 Feb 2009 21:30:18 +0000
parents 87ec8ab495b0
children 8ce8bcce0288
files src/timetable_cmd.cpp
diffstat 1 files changed, 7 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/timetable_cmd.cpp
+++ b/src/timetable_cmd.cpp
@@ -166,8 +166,13 @@
 		}
 	}
 
-	for (v = v->FirstShared(); v != NULL; v = v->NextShared()) {
-		InvalidateWindow(WC_VEHICLE_TIMETABLE, v->index);
+	for (Vehicle *v2 = v->FirstShared(); v2 != NULL; v2 = v2->NextShared()) {
+		if (v2 != v) {
+			/* Stop autofilling; only one vehicle at a time can perform autofill */
+			ClrBit(v2->vehicle_flags, VF_AUTOFILL_TIMETABLE);
+			ClrBit(v2->vehicle_flags, VF_AUTOFILL_PRES_WAIT_TIME);
+		}
+		InvalidateWindow(WC_VEHICLE_TIMETABLE, v2->index);
 	}
 
 	return CommandCost();