(svn r12808) -Fix: enforce autorenew values range in command
authorglx
Sun, 20 Apr 2008 21:36:41 +0000
changeset 10276 e28934bc929a
parent 10273 248661824a1e
child 10277 a01c1acdd701
(svn r12808) -Fix: enforce autorenew values range in command
-Fix: typo in english.txt
src/lang/english.txt
src/players.cpp
--- a/src/lang/english.txt	Sun Apr 20 11:40:33 2008 +0000
+++ b/src/lang/english.txt	Sun Apr 20 21:36:41 2008 +0000
@@ -1065,7 +1065,7 @@
 STR_CONFIG_PATCHES_WARN_INCOME_LESS                             :{LTBLUE}Warn if a train's income is negative: {ORANGE}{STRING1}
 STR_CONFIG_PATCHES_NEVER_EXPIRE_VEHICLES                        :{LTBLUE}Vehicles never expire: {ORANGE}{STRING1}
 STR_CONFIG_PATCHES_AUTORENEW_VEHICLE                            :{LTBLUE}Autorenew vehicle when it gets old
-STR_CONFIG_PATCHES_AUTORENEW_MONTHS                             :{LTBLUE}Autorenew when vehice is {ORANGE}{STRING1}{LTBLUE} months before/after max age
+STR_CONFIG_PATCHES_AUTORENEW_MONTHS                             :{LTBLUE}Autorenew when vehicle is {ORANGE}{STRING1}{LTBLUE} months before/after max age
 STR_CONFIG_PATCHES_AUTORENEW_MONEY                              :{LTBLUE}Autorenew minimum needed money for renew: {ORANGE}{STRING1}
 STR_CONFIG_PATCHES_ERRMSG_DURATION                              :{LTBLUE}Duration of error message: {ORANGE}{STRING1}
 STR_CONFIG_PATCHES_POPULATION_IN_LABEL                          :{LTBLUE}Show town population in the town name label: {ORANGE}{STRING1}
--- a/src/players.cpp	Sun Apr 20 11:40:33 2008 +0000
+++ b/src/players.cpp	Sun Apr 20 21:36:41 2008 +0000
@@ -670,6 +670,7 @@
 			}
 			break;
 		case 1:
+			if (Clamp((int16)p2, -12, 12) != (int16)p2) return CMD_ERROR;
 			if (p->engine_renew_months == (int16)p2)
 				return CMD_ERROR;
 
@@ -682,6 +683,7 @@
 			}
 			break;
 		case 2:
+			if (ClampU(p2, 0, 2000000) != p2) return CMD_ERROR;
 			if (p->engine_renew_money == (uint32)p2)
 				return CMD_ERROR;
 
@@ -730,6 +732,8 @@
 		}
 
 		case 4:
+			if (Clamp((int16)GB(p1, 16, 16), -12, 12) != (int16)GB(p1, 16, 16)) return CMD_ERROR;
+			if (ClampU(p2, 0, 2000000) != p2) return CMD_ERROR;
 			if (flags & DC_EXEC) {
 				p->engine_renew = HasBit(p1, 15);
 				p->engine_renew_months = (int16)GB(p1, 16, 16);