1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-21 05:53:02 +01:00

handle empty string tables

This commit is contained in:
Ted John
2016-06-26 21:43:30 +01:00
parent 1af6242381
commit a0d8b9ccbf
12 changed files with 76 additions and 61 deletions

View File

@@ -49,7 +49,7 @@ void LargeSceneryObject::ReadLegacy(IStream * stream)
_legacyType.large_scenery.var_11 = stream->ReadValue<uint8>();
stream->Seek(5, STREAM_SEEK_CURRENT);
GetStringTable().Read(stream, OBJ_STRING_ID_NAME);
GetStringTable()->Read(stream, OBJ_STRING_ID_NAME);
_sceneryTabEntry = stream->ReadValue<rct_object_entry>();
@@ -62,13 +62,13 @@ void LargeSceneryObject::ReadLegacy(IStream * stream)
_tiles = ReadTiles(stream);
GetImageTable().Read(stream);
GetImageTable()->Read(stream);
}
void LargeSceneryObject::Load()
{
_legacyType.name = language_allocate_object_string(GetName());
_legacyType.image = gfx_object_allocate_images(GetImageTable().GetImages(), GetImageTable().GetCount());
_legacyType.image = gfx_object_allocate_images(GetImageTable()->GetImages(), GetImageTable()->GetCount());
_legacyType.large_scenery.tiles = _tiles;
@@ -99,12 +99,13 @@ void LargeSceneryObject::Load()
void LargeSceneryObject::Unload()
{
language_free_object_string(_legacyType.name);
gfx_object_free_images(_legacyType.image, GetImageTable().GetCount());
gfx_object_free_images(_legacyType.image, GetImageTable()->GetCount());
}
const utf8 * LargeSceneryObject::GetName()
{
return GetStringTable().GetString(OBJ_STRING_ID_NAME);
const utf8 * name = GetStringTable()->GetString(OBJ_STRING_ID_NAME);
return name != nullptr ? name : "";
}
rct_large_scenery_tile * LargeSceneryObject::ReadTiles(IStream * stream)