aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scumm/resource_v7he.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/scumm/resource_v7he.cpp b/scumm/resource_v7he.cpp
index 89431825da..7b27866058 100644
--- a/scumm/resource_v7he.cpp
+++ b/scumm/resource_v7he.cpp
@@ -49,10 +49,10 @@ ResExtractor::~ResExtractor() {
CachedCursor *cc = &_cursorCache[i];
if (cc->valid) {
free(cc->bitmap);
- cc->bitmap = NULL;
- cc->valid = false;
+ free(cc->palette);
}
}
+ memset(_cursorCache, 0, sizeof(_cursorCache));
}
ResExtractor::CachedCursor *ResExtractor::findCachedCursor(int id) {
@@ -81,8 +81,8 @@ ResExtractor::CachedCursor *ResExtractor::getCachedCursorSlot() {
}
assert(r);
free(r->bitmap);
- r->bitmap = NULL;
- r->valid = false;
+ free(r->palette);
+ memset(r, 0, sizeof(CachedCursor));
return r;
}
@@ -106,7 +106,7 @@ void ResExtractor::setCursor(int id) {
}
if (_vm->_system->hasFeature(OSystem::kFeatureCursorHasPalette) && cc->palette)
- _vm->_system->setCursorPalette(cc->palette, 0, cc->palSize);
+ _vm->_system->setCursorPalette(cc->palette, 0, cc->palSize);
_vm->setCursorHotspot(cc->hotspot_x, cc->hotspot_y);
_vm->setCursorFromBuffer(cc->bitmap, cc->w, cc->h, cc->w);