summaryrefslogtreecommitdiff
path: root/src/newgrf_industries.cpp
diff options
context:
space:
mode:
authorfrosch <frosch@openttd.org>2010-05-01 13:01:21 +0000
committerfrosch <frosch@openttd.org>2010-05-01 13:01:21 +0000
commit77953032274c3bb49c8b22ff7a2767412586c5a7 (patch)
tree254b97e9037aec36599ddaa0e32e6ff0e388b5a9 /src/newgrf_industries.cpp
parent36850ba3e86fd9633ae0104caa0cb8b8aeecfc37 (diff)
downloadopenttd-77953032274c3bb49c8b22ff7a2767412586c5a7.tar.xz
(svn r19743) -Fix: NewGrfs could access map bits of not yet constructed industries and houses during construction callbacks.
Diffstat (limited to 'src/newgrf_industries.cpp')
-rw-r--r--src/newgrf_industries.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/newgrf_industries.cpp b/src/newgrf_industries.cpp
index 5c3c0027a..9e50dd087 100644
--- a/src/newgrf_industries.cpp
+++ b/src/newgrf_industries.cpp
@@ -345,18 +345,23 @@ static const SpriteGroup *IndustryResolveReal(const ResolverObject *object, cons
static uint32 IndustryGetRandomBits(const ResolverObject *object)
{
- return object->u.industry.ind == NULL ? 0 : object->u.industry.ind->random;
+ const Industry *ind = object->u.industry.ind;
+ assert(ind != NULL);
+ return ind->random;
}
static uint32 IndustryGetTriggers(const ResolverObject *object)
{
- return object->u.industry.ind == NULL ? 0 : object->u.industry.ind->random_triggers;
+ const Industry *ind = object->u.industry.ind;
+ assert(ind != NULL);
+ return ind->random_triggers;
}
static void IndustrySetTriggers(const ResolverObject *object, int triggers)
{
- if (object->u.industry.ind == NULL) return;
- object->u.industry.ind->random_triggers = triggers;
+ Industry *ind = object->u.industry.ind;
+ assert(ind != NULL && ind->index != INVALID_INDUSTRY);
+ ind->random_triggers = triggers;
}
static void NewIndustryResolver(ResolverObject *res, TileIndex tile, Industry *indus, IndustryType type)