From f7d3d879c56c1eb0aa8b8eebf4f8086cf42253c8 Mon Sep 17 00:00:00 2001 From: glx Date: Sun, 20 Apr 2008 21:36:41 +0000 Subject: (svn r12808) -Fix: enforce autorenew values range in command -Fix: typo in english.txt --- src/lang/english.txt | 2 +- src/players.cpp | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/lang/english.txt b/src/lang/english.txt index e298044a0..165a3c618 100644 --- a/src/lang/english.txt +++ b/src/lang/english.txt @@ -1065,7 +1065,7 @@ STR_CONFIG_PATCHES_ORDER_REVIEW_ON :of all vehicles 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} diff --git a/src/players.cpp b/src/players.cpp index fc696c5b2..7c8af009b 100644 --- a/src/players.cpp +++ b/src/players.cpp @@ -670,6 +670,7 @@ CommandCost CmdSetAutoReplace(TileIndex tile, uint32 flags, uint32 p1, uint32 p2 } 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 @@ CommandCost CmdSetAutoReplace(TileIndex tile, uint32 flags, uint32 p1, uint32 p2 } 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 @@ CommandCost CmdSetAutoReplace(TileIndex tile, uint32 flags, uint32 p1, uint32 p2 } 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); -- cgit v1.2.3-54-g00ecf