aboutsummaryrefslogtreecommitdiff
path: root/audio/softsynth/fmtowns_pc98/towns_euphony.cpp
diff options
context:
space:
mode:
authorathrxx2011-04-21 20:22:12 +0200
committerathrxx2011-04-21 20:22:12 +0200
commitb0008d2d33c394fbba358c08b032c5872e6a909d (patch)
tree17ec86439081fb96db9d32595a1e954d9eb244ca /audio/softsynth/fmtowns_pc98/towns_euphony.cpp
parentb929699ad20dc06a379fedb3704a28aec0f82347 (diff)
downloadscummvm-rg350-b0008d2d33c394fbba358c08b032c5872e6a909d.tar.gz
scummvm-rg350-b0008d2d33c394fbba358c08b032c5872e6a909d.tar.bz2
scummvm-rg350-b0008d2d33c394fbba358c08b032c5872e6a909d.zip
FM-TOWNS AUDIO: fix memory leak
Diffstat (limited to 'audio/softsynth/fmtowns_pc98/towns_euphony.cpp')
-rw-r--r--audio/softsynth/fmtowns_pc98/towns_euphony.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/audio/softsynth/fmtowns_pc98/towns_euphony.cpp b/audio/softsynth/fmtowns_pc98/towns_euphony.cpp
index 7c071c43fb..0ad96f76f3 100644
--- a/audio/softsynth/fmtowns_pc98/towns_euphony.cpp
+++ b/audio/softsynth/fmtowns_pc98/towns_euphony.cpp
@@ -40,6 +40,7 @@ TownsEuphonyDriver::~TownsEuphonyDriver() {
delete[] _activeChannels;
delete[] _sustainChannels;
delete[] _assignedChannels;
+ delete[] _eventBuffer;
delete[] _tEnable;
delete[] _tMode;
delete[] _tOrdr;
@@ -51,6 +52,16 @@ bool TownsEuphonyDriver::init() {
if (!_intf->init())
return false;
+ delete[] _activeChannels;
+ delete[] _sustainChannels;
+ delete[] _assignedChannels;
+ delete[] _eventBuffer;
+ delete[] _tEnable;
+ delete[] _tMode;
+ delete[] _tOrdr;
+ delete[] _tLevel;
+ delete[] _tTranspose;
+
_activeChannels = new int8[16];
_sustainChannels = new int8[16];
_assignedChannels = new ActiveChannel[128];