diff options
Diffstat (limited to 'engines/sludge/sound.cpp')
-rw-r--r-- | engines/sludge/sound.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/engines/sludge/sound.cpp b/engines/sludge/sound.cpp index d77f3d4e63..702a8c9c5b 100644 --- a/engines/sludge/sound.cpp +++ b/engines/sludge/sound.cpp @@ -381,20 +381,21 @@ int makeSoundAudioStream(int f, Audio::AudioStream *&audiostream, bool loopy) { } setResourceForFatal(f); - uint32 length = openFileFromNum(f); + uint32 length = g_sludge->_resMan->openFileFromNum(f); if (!length) return -1; - uint curr_ptr = bigDataFile->pos(); - Audio::RewindableAudioStream *stream = Audio::makeWAVStream(bigDataFile->readStream(length), DisposeAfterUse::NO); + Common::SeekableReadStream *readStream = g_sludge->_resMan->getData(); + uint curr_ptr = readStream->pos(); + Audio::RewindableAudioStream *stream = Audio::makeWAVStream(readStream->readStream(length), DisposeAfterUse::NO); #ifdef USE_VORBIS if (!stream) { - bigDataFile->seek(curr_ptr); - stream = Audio::makeVorbisStream(bigDataFile->readStream(length), DisposeAfterUse::NO); + readStream->seek(curr_ptr); + stream = Audio::makeVorbisStream(readStream->readStream(length), DisposeAfterUse::NO); } #endif - finishAccess(); + g_sludge->_resMan->finishAccess(); if (stream) { audiostream = Audio::makeLoopingAudioStream(stream, loopy ? 0 : 1); |