aboutsummaryrefslogtreecommitdiff
path: root/sound/wave.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'sound/wave.cpp')
-rw-r--r--sound/wave.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/sound/wave.cpp b/sound/wave.cpp
index fdb358a1a9..264e4ae7bb 100644
--- a/sound/wave.cpp
+++ b/sound/wave.cpp
@@ -164,8 +164,6 @@ AudioStream *makeWAVStream(Common::SeekableReadStream &stream) {
if (!loadWAVFromStream(stream, size, rate, flags, &type))
return 0;
- flags |= Audio::Mixer::FLAG_AUTOFREE;
-
if (type == 17) // IMA ADPCM
return makeADPCMStream(&stream, size, kADPCMIma, (flags & Audio::Mixer::FLAG_STEREO) ? 2 : 1);
@@ -173,5 +171,8 @@ AudioStream *makeWAVStream(Common::SeekableReadStream &stream) {
assert(data);
stream.read(data, size);
+ // Since we allocated our own buffer for the data, we must set the autofree flag.
+ flags |= Audio::Mixer::FLAG_AUTOFREE;
+
return makeLinearInputStream(rate, flags, data, size, 0, 0);
}