[Scummvm-cvs-logs] SF.net SVN: scummvm: [30501] scummvm/trunk/engines/scumm/imuse_digi
eriktorbjorn at users.sourceforge.net
eriktorbjorn at users.sourceforge.net
Tue Jan 15 21:30:48 CET 2008
Revision: 30501
http://scummvm.svn.sourceforge.net/scummvm/?rev=30501&view=rev
Author: eriktorbjorn
Date: 2008-01-15 12:30:48 -0800 (Tue, 15 Jan 2008)
Log Message:
-----------
Since the mixer uses 'delete' to free memory, we should allocate it with 'new'.
I don't know if I got all cases, but I no longer get any Valgrind warnings at
the beginning of CoMI when using the original sound/music files.
Modified Paths:
--------------
scummvm/trunk/engines/scumm/imuse_digi/dimuse.cpp
scummvm/trunk/engines/scumm/imuse_digi/dimuse_bndmgr.cpp
scummvm/trunk/engines/scumm/imuse_digi/dimuse_codecs.cpp
scummvm/trunk/engines/scumm/imuse_digi/dimuse_sndmgr.cpp
Modified: scummvm/trunk/engines/scumm/imuse_digi/dimuse.cpp
===================================================================
--- scummvm/trunk/engines/scumm/imuse_digi/dimuse.cpp 2008-01-15 20:11:28 UTC (rev 30500)
+++ scummvm/trunk/engines/scumm/imuse_digi/dimuse.cpp 2008-01-15 20:30:48 UTC (rev 30501)
@@ -302,7 +302,7 @@
int tmpFeedSize = _sound->getDataFromRegion(track->soundDesc, track->curRegion, &tmpPtr, tmpOffset, tmpFeedSize12Bits);
curFeedSize = BundleCodecs::decode12BitsSample(tmpPtr, &tmpSndBufferPtr, tmpFeedSize);
- free(tmpPtr);
+ delete[] tmpPtr;
} else if (bits == 16) {
curFeedSize = _sound->getDataFromRegion(track->soundDesc, track->curRegion, &tmpSndBufferPtr, track->regionOffset, feedSize);
if (channels == 1) {
Modified: scummvm/trunk/engines/scumm/imuse_digi/dimuse_bndmgr.cpp
===================================================================
--- scummvm/trunk/engines/scumm/imuse_digi/dimuse_bndmgr.cpp 2008-01-15 20:11:28 UTC (rev 30500)
+++ scummvm/trunk/engines/scumm/imuse_digi/dimuse_bndmgr.cpp 2008-01-15 20:30:48 UTC (rev 30501)
@@ -281,7 +281,7 @@
lastBlock = _numCompItems - 1;
int32 blocksFinalSize = 0x2000 * (1 + lastBlock - firstBlock);
- *compFinal = (byte *)malloc(blocksFinalSize);
+ *compFinal = new byte[blocksFinalSize];
assert(*compFinal);
finalSize = 0;
Modified: scummvm/trunk/engines/scumm/imuse_digi/dimuse_codecs.cpp
===================================================================
--- scummvm/trunk/engines/scumm/imuse_digi/dimuse_codecs.cpp 2008-01-15 20:11:28 UTC (rev 30500)
+++ scummvm/trunk/engines/scumm/imuse_digi/dimuse_codecs.cpp 2008-01-15 20:30:48 UTC (rev 30501)
@@ -34,7 +34,7 @@
uint32 decode12BitsSample(const byte *src, byte **dst, uint32 size) {
uint32 loop_size = size / 3;
uint32 s_size = loop_size * 4;
- byte *ptr = *dst = (byte *)malloc(s_size);
+ byte *ptr = *dst = new byte[s_size];
assert(ptr);
uint32 tmp;
Modified: scummvm/trunk/engines/scumm/imuse_digi/dimuse_sndmgr.cpp
===================================================================
--- scummvm/trunk/engines/scumm/imuse_digi/dimuse_sndmgr.cpp 2008-01-15 20:11:28 UTC (rev 30500)
+++ scummvm/trunk/engines/scumm/imuse_digi/dimuse_sndmgr.cpp 2008-01-15 20:30:48 UTC (rev 30501)
@@ -461,7 +461,7 @@
sound->disk = _disk;
prepareSound(ptr, sound);
if ((soundType == IMUSE_BUNDLE) && !sound->compressed) {
- free(ptr);
+ delete[] ptr;
}
return sound;
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list