aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra
diff options
context:
space:
mode:
authorJohannes Schickel2011-12-27 02:13:20 +0100
committerJohannes Schickel2011-12-27 02:15:39 +0100
commit1a5026570af441dd4e9e95ba507a9f6b3e0bebbf (patch)
tree82ecee5babeda71adcbe96b4a71a7a224ea19f05 /engines/kyra
parent107805c34309401ac1367b8739a358dd2aaabf55 (diff)
downloadscummvm-rg350-1a5026570af441dd4e9e95ba507a9f6b3e0bebbf.tar.gz
scummvm-rg350-1a5026570af441dd4e9e95ba507a9f6b3e0bebbf.tar.bz2
scummvm-rg350-1a5026570af441dd4e9e95ba507a9f6b3e0bebbf.zip
KYRA: Slight cleanup.
Diffstat (limited to 'engines/kyra')
-rw-r--r--engines/kyra/script_eob.cpp6
-rw-r--r--engines/kyra/script_eob.h4
2 files changed, 6 insertions, 4 deletions
diff --git a/engines/kyra/script_eob.cpp b/engines/kyra/script_eob.cpp
index e5f26be210..ffdb717484 100644
--- a/engines/kyra/script_eob.cpp
+++ b/engines/kyra/script_eob.cpp
@@ -157,10 +157,10 @@ EoBInfProcessor::~EoBInfProcessor() {
delete[] _flagTable;
delete[] _stack;
delete[] _scriptData;
- for (Common::Array<const InfOpcode *>::const_iterator a = _opcodes.begin(); a != _opcodes.end(); ++a) {
- delete(*a)->proc;
+
+ for (Common::Array<const InfOpcode *>::const_iterator a = _opcodes.begin(); a != _opcodes.end(); ++a)
delete *a;
- }
+
_opcodes.clear();
}
diff --git a/engines/kyra/script_eob.h b/engines/kyra/script_eob.h
index 3804db07c6..66323d6846 100644
--- a/engines/kyra/script_eob.h
+++ b/engines/kyra/script_eob.h
@@ -91,8 +91,10 @@ private:
Screen_EoB *_screen;
typedef Common::Functor1Mem<int8*, int, EoBInfProcessor> InfProc;
- struct InfOpcode {
+ struct InfOpcode : private Common::NonCopyable {
InfOpcode(InfProc *p, const char *d) : proc(p), desc(d) {}
+ ~InfOpcode() { delete proc; }
+
InfProc *proc;
Common::String desc;
};