summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/newgrf.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/newgrf.cpp b/src/newgrf.cpp
index 508e8305c..bca7afacf 100644
--- a/src/newgrf.cpp
+++ b/src/newgrf.cpp
@@ -1356,9 +1356,12 @@ static ChangeInfoResult BridgeChangeInfo(uint brid, int numinfo, int prop, byte
BridgeSpec *bridge = &_bridge[brid + i];
switch (prop) {
- case 0x08: // Year of availability
- bridge->avail_year = ORIGINAL_BASE_YEAR + grf_load_byte(&buf);
+ case 0x08: { // Year of availability
+ /* We treat '0' as always available */
+ byte year = grf_load_byte(&buf);
+ bridge->avail_year = (year > 0 ? ORIGINAL_BASE_YEAR + year : 0);
break;
+ }
case 0x09: // Minimum length
bridge->min_length = grf_load_byte(&buf);