From 36f1c93665d42c73e06670787647b8f9783890ef Mon Sep 17 00:00:00 2001 From: fusion32 Date: Sun, 15 Feb 2026 23:13:51 -0300 Subject: add missing try-catch block in RefreshSector --- src/map.cc | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/map.cc b/src/map.cc index 87cd307..72a9f1f 100644 --- a/src/map.cc +++ b/src/map.cc @@ -1319,8 +1319,12 @@ void RefreshSector(int SectorX, int SectorY, int SectorZ, TReadStream *Stream){ ASSERT(Sector); TSector *Sec = *Sector->at(SectorX, SectorY, SectorZ); - if(Sec && (Sec->MapFlags & 0x01) != 0){ - print(3, "Refreshe Sektor %d/%d/%d ...\n", SectorX, SectorY, SectorZ); + if(Sec == NULL || (Sec->MapFlags & 0x01) == 0){ + return; + } + + print(3, "Refreshe Sektor %d/%d/%d ...\n", SectorX, SectorY, SectorZ); + try{ while(!Stream->eof()){ uint8 OffsetX = Stream->readByte(); uint8 OffsetY = Stream->readByte(); @@ -1342,6 +1346,8 @@ void RefreshSector(int SectorX, int SectorY, int SectorZ, TReadStream *Stream){ LoadObjects(Stream, Con); } } + }catch(const char *str){ + error("RefreshSector: Fehler beim Auslesen der Daten (%s).\n", str); } } -- cgit v1.2.3