diff options
author | Alexey Yakovenko <waker@users.sourceforge.net> | 2013-11-11 21:42:13 +0100 |
---|---|---|
committer | Alexey Yakovenko <waker@users.sourceforge.net> | 2013-11-11 21:42:24 +0100 |
commit | fc8dfc977757014d453c053a42ddd8825446a082 (patch) | |
tree | ea23116f5b33ac2f931ee40289667df8627dff45 /plugins/adplug | |
parent | dfacef3019e560159601c80745f2b88919f65d27 (diff) |
adplug: memleak fixes from cppcheck report
Diffstat (limited to 'plugins/adplug')
-rw-r--r-- | plugins/adplug/adplug/dmo.cpp | 5 | ||||
-rw-r--r-- | plugins/adplug/adplug/ksm.cpp | 1 |
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); |