changeset 6227:2f3e0f04a033 draft

(svn r9029) -Fix (r7326): Only call the gradual loading amount callback if the bit for it is set in the vehicle's callbackmask.
author maedhros <maedhros@openttd.org>
date Tue, 06 Mar 2007 19:12:56 +0000
parents f67f7de4589e
children 4da53e7953fd
files src/economy.cpp src/newgrf_callbacks.h
diffstat 2 files changed, 3 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/economy.cpp
+++ b/src/economy.cpp
@@ -1368,7 +1368,7 @@
 	for (; v != NULL; v = v->next) {
 		GoodsEntry* ge;
 		load_amount = EngInfo(v->engine_type)->load_amount;
-		if (_patches.gradual_loading) {
+		if (_patches.gradual_loading && HASBIT(EngInfo(v->engine_type)->callbackmask, CBM_LOAD_AMOUNT)) {
 			uint16 cb_load_amount = GetVehicleCallback(CBID_VEHICLE_LOAD_AMOUNT, 0, 0, v->engine_type, v);
 			if (cb_load_amount != CALLBACK_FAILED) load_amount = cb_load_amount & 0xFF;
 		}
--- a/src/newgrf_callbacks.h
+++ b/src/newgrf_callbacks.h
@@ -19,8 +19,8 @@
 	// only for train vehicles
 	CBID_TRAIN_VEHICLE_LENGTH       = 0x11,
 
-	/* Called to determine the amount of cargo to load per unit of time when
-	 * using gradual loading. */
+	/* Called (if appropriate bit in callback mask is set) to determine the
+	 * amount of cargo to load per unit of time when using gradual loading. */
 	CBID_VEHICLE_LOAD_AMOUNT        = 0x12,
 
 	/* Called (if appropriate bit in callback mask is set) to determine if a