From 00e5c1df18449992cc974b99c61a44d1385bf4a7 Mon Sep 17 00:00:00 2001 From: terkhen Date: Sun, 12 Jun 2011 20:47:45 +0000 Subject: (svn r22567) -Codechange: Store persistent storages inside a pool. --- src/table/newgrf_debug_data.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/table/newgrf_debug_data.h') diff --git a/src/table/newgrf_debug_data.h b/src/table/newgrf_debug_data.h index 39e9ee4a6..5bed44310 100644 --- a/src/table/newgrf_debug_data.h +++ b/src/table/newgrf_debug_data.h @@ -291,12 +291,13 @@ class NIHIndustry : public NIHelper { const void *GetSpec(uint index) const { return GetIndustrySpec(Industry::Get(index)->type); } void SetStringParameters(uint index) const { this->SetSimpleStringParameters(STR_INDUSTRY_NAME, index); } void Resolve(ResolverObject *ro, uint32 index) const { extern void GetIndustryResolver(ResolverObject *ro, uint index); GetIndustryResolver(ro, index); } - uint GetPSASize(uint index, uint32 grfid) const { return cpp_lengthof(Industry, psa.storage); } + uint GetPSASize(uint index, uint32 grfid) const { return cpp_lengthof(PersistentStorage, storage); } int32 *GetPSAFirstPosition(uint index, uint32 grfid) const { - const void *base = this->GetInstance(index); - return (int32*)((byte*)base + cpp_offsetof(Industry, psa.storage)); + Industry *i = (Industry *)this->GetInstance(index); + if (i->psa == NULL) return NULL; + return (int32 *)(&i->psa->storage); } }; -- cgit v1.2.3-54-g00ecf