(svn r2110) - Fix: Fixed test for various flags (e.g. newtrains in usset). result is bool so !! any non-zero values before assigning them to it - they apparently didn't fit. ;-)
authorpasky
Wed, 30 Mar 2005 12:27:50 +0000
changeset 1606 4ec79f87951a
parent 1605 c4630be67467
child 1607 320079c7ac28
(svn r2110) - Fix: Fixed test for various flags (e.g. newtrains in usset). result is bool so !! any non-zero values before assigning them to it - they apparently didn't fit. ;-)
newgrf.c
--- a/newgrf.c	Wed Mar 30 09:25:20 2005 +0000
+++ b/newgrf.c	Wed Mar 30 12:27:50 2005 +0000
@@ -1667,8 +1667,9 @@
 			return;
 	}
 
+	DEBUG(grf, 7) ("Test condtype %d, param %x, condval %x", condtype, param_val, cond_val);
 	switch (condtype) {
-		case 0: result = (param_val & (1 << cond_val));
+		case 0: result = !!(param_val & (1 << cond_val));
 			break;
 		case 1: result = !(param_val & (1 << cond_val));
 			break;
@@ -1681,7 +1682,7 @@
 			break;
 		case 5: result = (param_val > cond_val);
 			break;
-		case 6: result = param_val; /* GRFID is active (only for param-num=88) */
+		case 6: result = !!param_val; /* GRFID is active (only for param-num=88) */
 			break;
 		case 7: result = !param_val; /* GRFID is not active (only for param-num=88) */
 			break;