aboutsummaryrefslogtreecommitdiff
path: root/engines/pegasus
diff options
context:
space:
mode:
authorMatthew Hoops2015-06-05 22:49:03 -0400
committerMatthew Hoops2015-06-06 17:20:41 -0400
commitb6fdc7be888034eb67e7b667a8d362105067a7ca (patch)
tree469f6a0c3c4c380ebeedf753a6554c7baa2f4c11 /engines/pegasus
parent7eb663a45b7c6f1ae65ce118fe059c6e4b62f1a8 (diff)
downloadscummvm-rg350-b6fdc7be888034eb67e7b667a8d362105067a7ca.tar.gz
scummvm-rg350-b6fdc7be888034eb67e7b667a8d362105067a7ca.tar.bz2
scummvm-rg350-b6fdc7be888034eb67e7b667a8d362105067a7ca.zip
AUDIO: Make makeAIFFStream return a RewindableAudioStream
All callers requiring SeekableAudioStream have been adapted by using dynamic_cast
Diffstat (limited to 'engines/pegasus')
-rw-r--r--engines/pegasus/sound.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/engines/pegasus/sound.cpp b/engines/pegasus/sound.cpp
index 5b437b81d4..ddcb2be010 100644
--- a/engines/pegasus/sound.cpp
+++ b/engines/pegasus/sound.cpp
@@ -59,7 +59,15 @@ void Sound::initFromAIFFFile(const Common::String &fileName) {
return;
}
- _stream = Audio::makeAIFFStream(file, DisposeAfterUse::YES);
+ Audio::RewindableAudioStream *stream = Audio::makeAIFFStream(file, DisposeAfterUse::YES);
+
+ _stream = dynamic_cast<Audio::SeekableAudioStream *>(stream);
+
+ if (!_stream) {
+ delete stream;
+ warning("AIFF stream '%s' is not seekable", fileName.c_str());
+ return;
+ }
}
void Sound::initFromQuickTime(const Common::String &fileName) {