aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra/vqa.cpp
diff options
context:
space:
mode:
authorMax Horn2010-01-19 00:56:29 +0000
committerMax Horn2010-01-19 00:56:29 +0000
commit557bb394de6619dd1f360b72333fd2ec7b3defab (patch)
treeb1166a12105d01c92edb528177d24aa5115232e5 /engines/kyra/vqa.cpp
parent69be7476212916b166ac16db41253cd367fb0dcc (diff)
downloadscummvm-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 'engines/kyra/vqa.cpp')
-rw-r--r--engines/kyra/vqa.cpp28
1 files changed, 14 insertions, 14 deletions
diff --git a/engines/kyra/vqa.cpp b/engines/kyra/vqa.cpp
index fde6e06a96..69d63b60f2 100644
--- a/engines/kyra/vqa.cpp
+++ b/engines/kyra/vqa.cpp
@@ -419,10 +419,10 @@ void VQAMovie::displayFrame(uint frameNum) {
switch (tag) {
case MKID_BE('SND0'): // Uncompressed sound
foundSound = true;
- inbuf = new byte[size];
+ inbuf = (byte *)malloc(size);
_file->read(inbuf, size);
assert(_stream);
- _stream->queueBuffer(inbuf, size, Audio::Mixer::FLAG_UNSIGNED);
+ _stream->queueBuffer(inbuf, size, DisposeAfterUse::YES, Audio::Mixer::FLAG_UNSIGNED);
break;
case MKID_BE('SND1'): // Compressed sound, almost like AUD
@@ -430,18 +430,18 @@ void VQAMovie::displayFrame(uint frameNum) {
outsize = _file->readUint16LE();
insize = _file->readUint16LE();
- inbuf = new byte[insize];
+ inbuf = (byte *)malloc(insize);
_file->read(inbuf, insize);
if (insize == outsize) {
assert(_stream);
- _stream->queueBuffer(inbuf, insize, Audio::Mixer::FLAG_UNSIGNED);
+ _stream->queueBuffer(inbuf, insize, DisposeAfterUse::YES, Audio::Mixer::FLAG_UNSIGNED);
} else {
- outbuf = new byte[outsize];
+ outbuf = (byte *)malloc(outsize);
decodeSND1(inbuf, insize, outbuf, outsize);
assert(_stream);
- _stream->queueBuffer(outbuf, outsize, Audio::Mixer::FLAG_UNSIGNED);
- delete[] inbuf;
+ _stream->queueBuffer(outbuf, outsize, DisposeAfterUse::YES, Audio::Mixer::FLAG_UNSIGNED);
+ free(inbuf);
}
break;
@@ -610,25 +610,25 @@ void VQAMovie::play() {
switch (tag) {
case MKID_BE('SND0'): // Uncompressed sound
- inbuf = new byte[size];
+ inbuf = (byte *)malloc(size);
_file->read(inbuf, size);
- _stream->queueBuffer(inbuf, size, Audio::Mixer::FLAG_UNSIGNED);
+ _stream->queueBuffer(inbuf, size, DisposeAfterUse::YES, Audio::Mixer::FLAG_UNSIGNED);
break;
case MKID_BE('SND1'): // Compressed sound
outsize = _file->readUint16LE();
insize = _file->readUint16LE();
- inbuf = new byte[insize];
+ inbuf = (byte *)malloc(insize);
_file->read(inbuf, insize);
if (insize == outsize) {
- _stream->queueBuffer(inbuf, insize, Audio::Mixer::FLAG_UNSIGNED);
+ _stream->queueBuffer(inbuf, insize, DisposeAfterUse::YES, Audio::Mixer::FLAG_UNSIGNED);
} else {
- outbuf = new byte[outsize];
+ outbuf = (byte *)malloc(outsize);
decodeSND1(inbuf, insize, outbuf, outsize);
- _stream->queueBuffer(outbuf, outsize, Audio::Mixer::FLAG_UNSIGNED);
- delete[] inbuf;
+ _stream->queueBuffer(outbuf, outsize, DisposeAfterUse::YES, Audio::Mixer::FLAG_UNSIGNED);
+ free(inbuf);
}
break;