aboutsummaryrefslogtreecommitdiff
path: root/engines/cge
diff options
context:
space:
mode:
Diffstat (limited to 'engines/cge')
-rw-r--r--engines/cge/bitmap.cpp2
-rw-r--r--engines/cge/cge_main.cpp4
-rw-r--r--engines/cge/detection.cpp11
-rw-r--r--engines/cge/vga13h.cpp1
4 files changed, 15 insertions, 3 deletions
diff --git a/engines/cge/bitmap.cpp b/engines/cge/bitmap.cpp
index 63f7c0dadf..b53cac4e90 100644
--- a/engines/cge/bitmap.cpp
+++ b/engines/cge/bitmap.cpp
@@ -187,7 +187,7 @@ uint16 Bitmap::moveVmap(uint8 *buf) {
uint16 vsiz = (uint8 *)_b - (uint8 *)_v;
uint16 siz = vsiz + _h * sizeof(HideDesc);
memcpy(buf, _v, siz);
- free(_v);
+ delete[] _v;
_b = (HideDesc *)((_v = buf) + vsiz);
return siz;
}
diff --git a/engines/cge/cge_main.cpp b/engines/cge/cge_main.cpp
index cbba280ff8..d9d32b7f39 100644
--- a/engines/cge/cge_main.cpp
+++ b/engines/cge/cge_main.cpp
@@ -311,8 +311,8 @@ void CGEEngine::syncGame(Common::SeekableReadStream *readStream, Common::WriteSt
if (s.isSaving()) {
for (i = 0; i < kPocketNX; i++) {
- register Sprite *s = _pocket[i];
- _pocref[i] = (s) ? s->_ref : -1;
+ register Sprite *spr = _pocket[i];
+ _pocref[i] = (spr) ? spr->_ref : -1;
}
warning("STUB: CGEEngine::syncGame Digital and Midi volume");
diff --git a/engines/cge/detection.cpp b/engines/cge/detection.cpp
index 3455052730..7eb147d697 100644
--- a/engines/cge/detection.cpp
+++ b/engines/cge/detection.cpp
@@ -75,6 +75,17 @@ static const ADGameDescription gameDescriptions[] = {
},
Common::PL_POL, Common::kPlatformPC, ADGF_DEMO, GUIO_NONE
},
+ // English ScummVM version
+ {
+ "soltys", "",
+ {
+ {"vol.cat", 0, "bfea076fee47b8d64fdf213e56c60911", 50176},
+ {"vol.dat", 0, "f9ae2e7f8f7cac91378cdafca43faf1e", 8427396},
+ AD_LISTEND
+ },
+ Common::EN_ANY, Common::kPlatformPC, ADGF_NO_FLAGS, GUIO_NONE
+ },
+
AD_TABLE_END_MARKER
};
diff --git a/engines/cge/vga13h.cpp b/engines/cge/vga13h.cpp
index 8889c59b8d..de28794f3f 100644
--- a/engines/cge/vga13h.cpp
+++ b/engines/cge/vga13h.cpp
@@ -382,6 +382,7 @@ Sprite *Sprite::expand() {
if (len == 0 || *line == '.')
continue;
+ assert(shpcnt <= _shpCnt);
switch (takeEnum(Comd, strtok(line, " =\t"))) {
case 0 : { // Name
setName(strtok(NULL, ""));