diff options
author | Max Horn | 2010-01-19 00:56:29 +0000 |
---|---|---|
committer | Max Horn | 2010-01-19 00:56:29 +0000 |
commit | 557bb394de6619dd1f360b72333fd2ec7b3defab (patch) | |
tree | b1166a12105d01c92edb528177d24aa5115232e5 /graphics/video/smk_decoder.cpp | |
parent | 69be7476212916b166ac16db41253cd367fb0dcc (diff) | |
download | scummvm-rg350-557bb394de6619dd1f360b72333fd2ec7b3defab.tar.gz scummvm-rg350-557bb394de6619dd1f360b72333fd2ec7b3defab.tar.bz2 scummvm-rg350-557bb394de6619dd1f360b72333fd2ec7b3defab.zip |
Get rid of Mixer::FLAG_AUTOFREE.
Also fix several recently introduced new/delete vs. malloc/free mismatches.
svn-id: r47369
Diffstat (limited to 'graphics/video/smk_decoder.cpp')
-rw-r--r-- | graphics/video/smk_decoder.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/graphics/video/smk_decoder.cpp b/graphics/video/smk_decoder.cpp index a3b056b6a3..991ebbf589 100644 --- a/graphics/video/smk_decoder.cpp +++ b/graphics/video/smk_decoder.cpp @@ -562,14 +562,14 @@ bool SmackerDecoder::decodeNextFrame() { if (_header.audioInfo[i].hasAudio && chunkSize > 0 && i == 0) { // If it's track 0, play the audio data - byte *soundBuffer = new byte[chunkSize]; + byte *soundBuffer = (byte *)malloc(chunkSize); _fileStream->read(soundBuffer, chunkSize); if (_header.audioInfo[i].isCompressed) { // Compressed audio (Huffman DPCM encoded) queueCompressedBuffer(soundBuffer, chunkSize, dataSizeUnpacked, i); - delete[] soundBuffer; + free(soundBuffer); } else { // Uncompressed audio (PCM) byte flags = 0; @@ -578,7 +578,7 @@ bool SmackerDecoder::decodeNextFrame() { if (_header.audioInfo[0].isStereo) flags = flags | Audio::Mixer::FLAG_STEREO; - _audioStream->queueBuffer(soundBuffer, chunkSize, flags); + _audioStream->queueBuffer(soundBuffer, chunkSize, DisposeAfterUse::YES, flags); // The sound buffer will be deleted by QueuingAudioStream } @@ -767,7 +767,7 @@ void SmackerDecoder::queueCompressedBuffer(byte *buffer, uint32 bufferSize, int numBytes = 1 * (isStereo ? 2 : 1) * (is16Bits ? 2 : 1); - byte *unpackedBuffer = new byte[unpackedSize]; + byte *unpackedBuffer = (byte *)malloc(unpackedSize); byte *curPointer = unpackedBuffer; uint32 curPos = 0; @@ -832,7 +832,7 @@ void SmackerDecoder::queueCompressedBuffer(byte *buffer, uint32 bufferSize, flags = flags | Audio::Mixer::FLAG_16BITS; if (_header.audioInfo[0].isStereo) flags = flags | Audio::Mixer::FLAG_STEREO; - _audioStream->queueBuffer(unpackedBuffer, unpackedSize, flags); + _audioStream->queueBuffer(unpackedBuffer, unpackedSize, DisposeAfterUse::YES, flags); // unpackedBuffer will be deleted by QueuingAudioStream } |