summaryrefslogtreecommitdiff
path: root/plugins/adplug
diff options
context:
space:
mode:
authorGravatar Alexey Yakovenko <waker@users.sourceforge.net>2013-11-11 21:42:13 +0100
committerGravatar Alexey Yakovenko <waker@users.sourceforge.net>2013-11-11 21:42:24 +0100
commitfc8dfc977757014d453c053a42ddd8825446a082 (patch)
treeea23116f5b33ac2f931ee40289667df8627dff45 /plugins/adplug
parentdfacef3019e560159601c80745f2b88919f65d27 (diff)
adplug: memleak fixes from cppcheck report
Diffstat (limited to 'plugins/adplug')
-rw-r--r--plugins/adplug/adplug/dmo.cpp5
-rw-r--r--plugins/adplug/adplug/ksm.cpp1
2 files changed, 5 insertions, 1 deletions
diff --git a/plugins/adplug/adplug/dmo.cpp b/plugins/adplug/adplug/dmo.cpp
index 8a3d8e24..8989dc21 100644
--- a/plugins/adplug/adplug/dmo.cpp
+++ b/plugins/adplug/adplug/dmo.cpp
@@ -58,7 +58,10 @@ bool CdmoLoader::load(const char *filename, const CFileProvider &fp)
dmo_unpacker *unpacker = new dmo_unpacker;
unsigned char chkhdr[16];
- if(!fp.extension(filename, ".dmo")) return false;
+ if(!fp.extension(filename, ".dmo")) {
+ delete unpacker;
+ return false;
+ }
f = fp.open(filename); if(!f) return false;
f->readString((char *)chkhdr, 16);
diff --git a/plugins/adplug/adplug/ksm.cpp b/plugins/adplug/adplug/ksm.cpp
index b93b52f7..07727afc 100644
--- a/plugins/adplug/adplug/ksm.cpp
+++ b/plugins/adplug/adplug/ksm.cpp
@@ -50,6 +50,7 @@ bool CksmPlayer::load(const char *filename, const CFileProvider &fp)
if(!fp.extension(filename, ".ksm")) {
AdPlug_LogWrite("CksmPlayer::load(,\"%s\"): File doesn't have '.ksm' "
"extension! Rejected!\n", filename);
+ delete[] fn;
return false;
}
AdPlug_LogWrite("*** CksmPlayer::load(,\"%s\") ***\n", filename);