summaryrefslogtreecommitdiff
path: root/strings.c
diff options
context:
space:
mode:
authordarkvater <darkvater@openttd.org>2004-08-16 13:54:37 +0000
committerdarkvater <darkvater@openttd.org>2004-08-16 13:54:37 +0000
commitd33c833a82808c256562b7f3a7e07251613d14ca (patch)
tree95176fb6993ec7b8e9eaccaf00ec4da70cfd5742 /strings.c
parentf98482d45abe6d86e44a6d79e2b74176dd2fd5db (diff)
downloadopenttd-d33c833a82808c256562b7f3a7e07251613d14ca.tar.xz
(svn r65) -Fix [1009567] problem with transferred cargo crashes game. Invalid st->xy on deleted station.
Diffstat (limited to 'strings.c')
-rw-r--r--strings.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/strings.c b/strings.c
index a017c9d20..da6038c70 100644
--- a/strings.c
+++ b/strings.c
@@ -496,7 +496,10 @@ static byte *DecodeString(byte *buff, const byte *str)
Station *st;
InjectDparam(1);
st = DEREF_STATION(GET_DPARAM16(1));
- assert(st->xy);
+ if (!st->xy) { // station doesn't exist anymore
+ buff = GetString(buff, STR_UNKNOWN_DESTINATION);
+ break;
+ }
SET_DPARAM16(0, st->town->townnametype);
SET_DPARAM32(1, st->town->townnameparts);
buff = GetString(buff, st->string_id);