aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
Diffstat (limited to 'engines')
-rw-r--r--engines/lab/resource.cpp3
-rw-r--r--engines/lab/special.cpp2
2 files changed, 5 insertions, 0 deletions
diff --git a/engines/lab/resource.cpp b/engines/lab/resource.cpp
index 278222f85c..0e8c118637 100644
--- a/engines/lab/resource.cpp
+++ b/engines/lab/resource.cpp
@@ -158,6 +158,9 @@ bool Resource::readViews(uint16 roomNum) {
}
void Resource::freeViews(uint16 roomNum) {
+ if (!_vm->_rooms)
+ return;
+
for (uint16 i = 0; i < 4; i++)
freeView(_vm->_rooms[roomNum]._view[i]);
diff --git a/engines/lab/special.cpp b/engines/lab/special.cpp
index 946277b8f0..32abde2cb0 100644
--- a/engines/lab/special.cpp
+++ b/engines/lab/special.cpp
@@ -284,6 +284,8 @@ void LabEngine::doJournal() {
delete[] _blankJournal;
delete[] _journalBackImage->_imageData;
+ _blankJournal = _journalBackImage->_imageData = nullptr;
+
_event->freeButtonList(&_journalButtonList);
_graphics->closeFont(&_journalFont);