aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Horn2009-10-18 19:41:59 +0000
committerMax Horn2009-10-18 19:41:59 +0000
commit2bbf708deaf2d60c70786ec1ef2f9ea0d1f0bd4a (patch)
tree3aac193c0b0419c50f72690bdfa77016ea413464
parent64861f1e40ee5084bcbfa3e5bd3adbe746d7dfc5 (diff)
downloadscummvm-rg350-2bbf708deaf2d60c70786ec1ef2f9ea0d1f0bd4a.tar.gz
scummvm-rg350-2bbf708deaf2d60c70786ec1ef2f9ea0d1f0bd4a.tar.bz2
scummvm-rg350-2bbf708deaf2d60c70786ec1ef2f9ea0d1f0bd4a.zip
Introduced new type Common::DisposeAfterUse::Flag
svn-id: r45233
-rw-r--r--common/stream.cpp8
-rw-r--r--common/stream.h30
-rw-r--r--common/unarj.cpp4
-rw-r--r--common/unzip.cpp2
-rw-r--r--common/xmlparser.cpp2
-rw-r--r--common/xmlparser.h2
-rw-r--r--engines/agi/sound.cpp2
-rw-r--r--engines/cruise/overlay.cpp4
-rw-r--r--engines/groovie/resource.cpp2
-rw-r--r--engines/groovie/saveload.cpp2
-rw-r--r--engines/kyra/resource_intern.cpp4
-rw-r--r--engines/kyra/saveload_hof.cpp2
-rw-r--r--engines/kyra/saveload_lol.cpp2
-rw-r--r--engines/kyra/saveload_mr.cpp2
-rw-r--r--engines/kyra/screen.cpp2
-rw-r--r--engines/m4/compression.h2
-rw-r--r--engines/made/redreader.cpp2
-rw-r--r--engines/parallaction/disk_ns.cpp4
-rw-r--r--engines/parallaction/font.cpp2
-rw-r--r--engines/saga/sound.cpp6
-rw-r--r--engines/sci/sfx/core.cpp4
-rw-r--r--engines/scumm/saveload.cpp2
-rw-r--r--engines/sword2/music.cpp25
-rw-r--r--engines/teenagent/pack.cpp2
-rw-r--r--engines/tinsel/music.cpp2
-rw-r--r--engines/tinsel/sound.cpp4
-rw-r--r--graphics/video/coktelvideo/coktelvideo.cpp2
-rw-r--r--gui/ThemeEngine.cpp2
28 files changed, 68 insertions, 61 deletions
diff --git a/common/stream.cpp b/common/stream.cpp
index 9329ddea6c..07ca37555d 100644
--- a/common/stream.cpp
+++ b/common/stream.cpp
@@ -37,7 +37,7 @@ MemoryReadStream *ReadStream::readStream(uint32 dataSize) {
void *buf = malloc(dataSize);
dataSize = read(buf, dataSize);
assert(dataSize > 0);
- return new MemoryReadStream((byte *)buf, dataSize, true);
+ return new MemoryReadStream((byte *)buf, dataSize, DisposeAfterUse::YES);
}
@@ -188,7 +188,7 @@ uint32 SubReadStream::read(void *dataPtr, uint32 dataSize) {
return dataSize;
}
-SeekableSubReadStream::SeekableSubReadStream(SeekableReadStream *parentStream, uint32 begin, uint32 end, bool disposeParentStream)
+SeekableSubReadStream::SeekableSubReadStream(SeekableReadStream *parentStream, uint32 begin, uint32 end, DisposeAfterUse::Flag disposeParentStream)
: SubReadStream(parentStream, end, disposeParentStream),
_parentStream(parentStream),
_begin(begin) {
@@ -222,7 +222,7 @@ bool SeekableSubReadStream::seek(int32 offset, int whence) {
return ret;
}
-BufferedReadStream::BufferedReadStream(ReadStream *parentStream, uint32 bufSize, bool disposeParentStream)
+BufferedReadStream::BufferedReadStream(ReadStream *parentStream, uint32 bufSize, DisposeAfterUse::Flag disposeParentStream)
: _parentStream(parentStream),
_disposeParentStream(disposeParentStream),
_pos(0),
@@ -279,7 +279,7 @@ uint32 BufferedReadStream::read(void *dataPtr, uint32 dataSize) {
return alreadyRead + dataSize;
}
-BufferedSeekableReadStream::BufferedSeekableReadStream(SeekableReadStream *parentStream, uint32 bufSize, bool disposeParentStream)
+BufferedSeekableReadStream::BufferedSeekableReadStream(SeekableReadStream *parentStream, uint32 bufSize, DisposeAfterUse::Flag disposeParentStream)
: BufferedReadStream(parentStream, bufSize, disposeParentStream),
_parentStream(parentStream) {
}
diff --git a/common/stream.h b/common/stream.h
index edc1c3e35a..3a1391e2ba 100644
--- a/common/stream.h
+++ b/common/stream.h
@@ -396,6 +396,11 @@ public:
virtual String readLine();
};
+
+namespace DisposeAfterUse {
+ enum Flag { NO, YES };
+}
+
/**
* SubReadStream provides access to a ReadStream restricted to the range
* [currentPosition, currentPosition+end).
@@ -407,12 +412,12 @@ public:
class SubReadStream : virtual public ReadStream {
protected:
ReadStream *_parentStream;
- bool _disposeParentStream;
+ DisposeAfterUse::Flag _disposeParentStream;
uint32 _pos;
uint32 _end;
bool _eos;
public:
- SubReadStream(ReadStream *parentStream, uint32 end, bool disposeParentStream = false)
+ SubReadStream(ReadStream *parentStream, uint32 end, DisposeAfterUse::Flag disposeParentStream = DisposeAfterUse::NO)
: _parentStream(parentStream),
_disposeParentStream(disposeParentStream),
_pos(0),
@@ -421,7 +426,8 @@ public:
assert(parentStream);
}
~SubReadStream() {
- if (_disposeParentStream) delete _parentStream;
+ if (_disposeParentStream)
+ delete _parentStream;
}
virtual bool eos() const { return _eos; }
@@ -443,7 +449,7 @@ protected:
SeekableReadStream *_parentStream;
uint32 _begin;
public:
- SeekableSubReadStream(SeekableReadStream *parentStream, uint32 begin, uint32 end, bool disposeParentStream = false);
+ SeekableSubReadStream(SeekableReadStream *parentStream, uint32 begin, uint32 end, DisposeAfterUse::Flag disposeParentStream = DisposeAfterUse::NO);
virtual int32 pos() const { return _pos - _begin; }
virtual int32 size() const { return _end - _begin; }
@@ -463,7 +469,7 @@ private:
const bool _bigEndian;
public:
- SeekableSubReadStreamEndian(SeekableReadStream *parentStream, uint32 begin, uint32 end, bool bigEndian = false, bool disposeParentStream = false)
+ SeekableSubReadStreamEndian(SeekableReadStream *parentStream, uint32 begin, uint32 end, bool bigEndian = false, DisposeAfterUse::Flag disposeParentStream = DisposeAfterUse::NO)
: SeekableSubReadStream(parentStream, begin, end, disposeParentStream), _bigEndian(bigEndian) {
}
@@ -496,14 +502,14 @@ public:
class BufferedReadStream : virtual public ReadStream {
protected:
ReadStream *_parentStream;
- bool _disposeParentStream;
+ DisposeAfterUse::Flag _disposeParentStream;
byte *_buf;
uint32 _pos;
uint32 _bufSize;
uint32 _realBufSize;
public:
- BufferedReadStream(ReadStream *parentStream, uint32 bufSize, bool disposeParentStream = false);
+ BufferedReadStream(ReadStream *parentStream, uint32 bufSize, DisposeAfterUse::Flag disposeParentStream = DisposeAfterUse::NO);
~BufferedReadStream();
virtual bool eos() const { return (_pos == _bufSize) && _parentStream->eos(); }
@@ -521,7 +527,7 @@ class BufferedSeekableReadStream : public BufferedReadStream, public SeekableRea
protected:
SeekableReadStream *_parentStream;
public:
- BufferedSeekableReadStream(SeekableReadStream *parentStream, uint32 bufSize, bool disposeParentStream = false);
+ BufferedSeekableReadStream(SeekableReadStream *parentStream, uint32 bufSize, DisposeAfterUse::Flag disposeParentStream = DisposeAfterUse::NO);
virtual int32 pos() const { return _parentStream->pos() - (_bufSize - _pos); }
virtual int32 size() const { return _parentStream->size(); }
@@ -542,7 +548,7 @@ private:
const uint32 _size;
uint32 _pos;
byte _encbyte;
- bool _disposeMemory;
+ DisposeAfterUse::Flag _disposeMemory;
bool _eos;
public:
@@ -552,7 +558,7 @@ public:
* wraps it. If disposeMemory is true, the MemoryReadStream takes ownership
* of the buffer and hence free's it when destructed.
*/
- MemoryReadStream(const byte *dataPtr, uint32 dataSize, bool disposeMemory = false) :
+ MemoryReadStream(const byte *dataPtr, uint32 dataSize, DisposeAfterUse::Flag disposeMemory = DisposeAfterUse::NO) :
_ptrOrig(dataPtr),
_ptr(dataPtr),
_size(dataSize),
@@ -649,7 +655,7 @@ private:
byte *_ptr;
byte *_data;
uint32 _pos;
- bool _disposeMemory;
+ DisposeAfterUse::Flag _disposeMemory;
void ensureCapacity(uint32 new_len) {
if (new_len <= _capacity)
@@ -670,7 +676,7 @@ private:
_size = new_len;
}
public:
- MemoryWriteStreamDynamic(bool disposeMemory = false) : _capacity(0), _size(0), _ptr(0), _data(0), _pos(0), _disposeMemory(disposeMemory) {}
+ MemoryWriteStreamDynamic(DisposeAfterUse::Flag disposeMemory = DisposeAfterUse::NO) : _capacity(0), _size(0), _ptr(0), _data(0), _pos(0), _disposeMemory(disposeMemory) {}
~MemoryWriteStreamDynamic() {
if (_disposeMemory)
diff --git a/common/unarj.cpp b/common/unarj.cpp
index 0312cc5b08..793012946e 100644
--- a/common/unarj.cpp
+++ b/common/unarj.cpp
@@ -379,7 +379,7 @@ bool ArjFile::open(const Common::String &filename) {
// If reading from archiveFile directly is too slow to be usable,
// maybe the filesystem code should instead wrap its files
// in a BufferedReadStream.
- decoder->_compressed = new BufferedReadStream(&archiveFile, 4096, false);
+ decoder->_compressed = new BufferedReadStream(&archiveFile, 4096);
decoder->_outstream = new MemoryWriteStream(uncompressedData, hdr->origSize);
if (hdr->method == 1 || hdr->method == 2 || hdr->method == 3)
@@ -391,7 +391,7 @@ bool ArjFile::open(const Common::String &filename) {
}
- _uncompressed = new MemoryReadStream(uncompressedData, hdr->origSize, true);
+ _uncompressed = new MemoryReadStream(uncompressedData, hdr->origSize, DisposeAfterUse::YES);
assert(_uncompressed);
return true;
diff --git a/common/unzip.cpp b/common/unzip.cpp
index 1b0a09deeb..5c57736d4d 100644
--- a/common/unzip.cpp
+++ b/common/unzip.cpp
@@ -1442,7 +1442,7 @@ Common::SeekableReadStream *ZipArchive::createReadStreamForMember(const Common::
assert(buffer);
unzReadCurrentFile(_zipFile, buffer, fileInfo.uncompressed_size);
unzCloseCurrentFile(_zipFile);
- return new Common::MemoryReadStream(buffer, fileInfo.uncompressed_size+1, true);
+ return new Common::MemoryReadStream(buffer, fileInfo.uncompressed_size+1, DisposeAfterUse::YES);
// FIXME: instead of reading all into a memory stream, we could
// instead create a new ZipStream class. But then we have to be
diff --git a/common/xmlparser.cpp b/common/xmlparser.cpp
index 534007b03d..aee44666f3 100644
--- a/common/xmlparser.cpp
+++ b/common/xmlparser.cpp
@@ -48,7 +48,7 @@ bool XMLParser::loadFile(const FSNode &node) {
return true;
}
-bool XMLParser::loadBuffer(const byte *buffer, uint32 size, bool disposable) {
+bool XMLParser::loadBuffer(const byte *buffer, uint32 size, DisposeAfterUse::Flag disposable) {
_stream = new MemoryReadStream(buffer, size, disposable);
_fileName = "Memory Stream";
return true;
diff --git a/common/xmlparser.h b/common/xmlparser.h
index 0f859ecf14..344fd4068d 100644
--- a/common/xmlparser.h
+++ b/common/xmlparser.h
@@ -198,7 +198,7 @@ public:
* i.e. if it can be freed safely after it's
* no longer needed by the parser.
*/
- bool loadBuffer(const byte *buffer, uint32 size, bool disposable = false);
+ bool loadBuffer(const byte *buffer, uint32 size, DisposeAfterUse::Flag disposable = DisposeAfterUse::NO);
bool loadStream(Common::SeekableReadStream *stream);
diff --git a/engines/agi/sound.cpp b/engines/agi/sound.cpp
index 5a39b663a5..05cbdaba5e 100644
--- a/engines/agi/sound.cpp
+++ b/engines/agi/sound.cpp
@@ -89,7 +89,7 @@ const uint8 *PCjrSound::getVoicePointer(uint voiceNum) {
}
IIgsSample::IIgsSample(uint8 *data, uint32 len, int resnum, SoundMgr &manager) : AgiSound(manager) {
- Common::MemoryReadStream stream(data, len, true);
+ Common::MemoryReadStream stream(data, len, Common::DisposeAfterUse::YES);
// Check that the header was read ok and that it's of the correct type
if (_header.read(stream) && _header.type == AGI_SOUND_SAMPLE) { // An Apple IIGS AGI sample resource
diff --git a/engines/cruise/overlay.cpp b/engines/cruise/overlay.cpp
index 085f8b25c4..8ed129a424 100644
--- a/engines/cruise/overlay.cpp
+++ b/engines/cruise/overlay.cpp
@@ -209,7 +209,7 @@ int loadOverlay(const char *scriptName) {
debug(1, "OVL loading done...");
- Common::MemoryReadStream s(unpackedBuffer, unpackedSize, true);
+ Common::MemoryReadStream s(unpackedBuffer, unpackedSize, Common::DisposeAfterUse::YES);
unpackedBuffer = NULL;
ovlData = overlayTable[scriptIdx].ovlData;
@@ -590,7 +590,7 @@ int loadOverlay(const char *scriptName) {
loadPackedFileToMem(fileIdx, (uint8 *) unpackedBuffer);
}
- Common::MemoryReadStream s2(unpackedBuffer, unpackedSize, true);
+ Common::MemoryReadStream s2(unpackedBuffer, unpackedSize, Common::DisposeAfterUse::YES);
unpackedBuffer = NULL;
ovlData->specialString1Length = s2.readUint16BE();
diff --git a/engines/groovie/resource.cpp b/engines/groovie/resource.cpp
index 148fa9c451..6a3a9c9f04 100644
--- a/engines/groovie/resource.cpp
+++ b/engines/groovie/resource.cpp
@@ -65,7 +65,7 @@ Common::SeekableReadStream *ResMan::open(uint32 fileRef) {
}
// Returning the resource substream
- return new Common::SeekableSubReadStream(gjdFile, resInfo.offset, resInfo.offset + resInfo.size, true);
+ return new Common::SeekableSubReadStream(gjdFile, resInfo.offset, resInfo.offset + resInfo.size, Common::DisposeAfterUse::YES);
}
diff --git a/engines/groovie/saveload.cpp b/engines/groovie/saveload.cpp
index ec182af3c5..98c02284f1 100644
--- a/engines/groovie/saveload.cpp
+++ b/engines/groovie/saveload.cpp
@@ -138,7 +138,7 @@ Common::InSaveFile *SaveLoad::openForLoading(const Common::String &target, int s
}
// Return a substream, skipping the metadata
- Common::SeekableSubReadStream *sub = new Common::SeekableSubReadStream(savefile, metaDataSize, savefile->size(), true);
+ Common::SeekableSubReadStream *sub = new Common::SeekableSubReadStream(savefile, metaDataSize, savefile->size(), Common::DisposeAfterUse::YES);
// Move to the beginning of the substream
sub->seek(0, SEEK_SET);
diff --git a/engines/kyra/resource_intern.cpp b/engines/kyra/resource_intern.cpp
index 4c04cc5e7d..639dc96800 100644
--- a/engines/kyra/resource_intern.cpp
+++ b/engines/kyra/resource_intern.cpp
@@ -78,7 +78,7 @@ Common::SeekableReadStream *PlainArchive::createReadStreamForMember(const Common
if (!parent)
return 0;
- return new Common::SeekableSubReadStream(parent, fDesc->_value.offset, fDesc->_value.offset + fDesc->_value.size, true);
+ return new Common::SeekableSubReadStream(parent, fDesc->_value.offset, fDesc->_value.offset + fDesc->_value.size, Common::DisposeAfterUse::YES);
}
// -> CachedArchive implementation
@@ -130,7 +130,7 @@ Common::SeekableReadStream *CachedArchive::createReadStreamForMember(const Commo
if (fDesc == _files.end())
return 0;
- return new Common::MemoryReadStream(fDesc->_value.data, fDesc->_value.size, false);
+ return new Common::MemoryReadStream(fDesc->_value.data, fDesc->_value.size, Common::DisposeAfterUse::NO);
}
// ResFileLoader implementations
diff --git a/engines/kyra/saveload_hof.cpp b/engines/kyra/saveload_hof.cpp
index 4ff63eaff0..4ddd2a5392 100644
--- a/engines/kyra/saveload_hof.cpp
+++ b/engines/kyra/saveload_hof.cpp
@@ -152,7 +152,7 @@ Common::Error KyraEngine_HoF::loadGameState(int slot) {
int loadedZTable = _characterShapeFile;
- Common::SeekableSubReadStreamEndian in(saveFile, saveFile->pos(), saveFile->size(), !header.originalSave, true);
+ Common::SeekableSubReadStreamEndian in(saveFile, saveFile->pos(), saveFile->size(), !header.originalSave, Common::DisposeAfterUse::YES);
_screen->hideMouse();
diff --git a/engines/kyra/saveload_lol.cpp b/engines/kyra/saveload_lol.cpp
index e27c0431e2..23bde6edb7 100644
--- a/engines/kyra/saveload_lol.cpp
+++ b/engines/kyra/saveload_lol.cpp
@@ -54,7 +54,7 @@ Common::Error LoLEngine::loadGameState(int slot) {
_screen->fillRect(112, 0, 287, 119, 0, 0);
_screen->updateScreen();
- Common::SeekableSubReadStreamEndian in(saveFile, saveFile->pos(), saveFile->size(), !header.originalSave, true);
+ Common::SeekableSubReadStreamEndian in(saveFile, saveFile->pos(), saveFile->size(), !header.originalSave, Common::DisposeAfterUse::YES);
for (int i = 0; i < 4; i++) {
LoLCharacter *c = &_characters[i];
diff --git a/engines/kyra/saveload_mr.cpp b/engines/kyra/saveload_mr.cpp
index 16fbbdd902..88befc7f37 100644
--- a/engines/kyra/saveload_mr.cpp
+++ b/engines/kyra/saveload_mr.cpp
@@ -150,7 +150,7 @@ Common::Error KyraEngine_MR::loadGameState(int slot) {
int curShapes = _characterShapeFile;
- Common::SeekableSubReadStreamEndian in(saveFile, saveFile->pos(), saveFile->size(), !header.originalSave, true);
+ Common::SeekableSubReadStreamEndian in(saveFile, saveFile->pos(), saveFile->size(), !header.originalSave, Common::DisposeAfterUse::YES);
_screen->hideMouse();
diff --git a/engines/kyra/screen.cpp b/engines/kyra/screen.cpp
index f190c6ab3d..5d5ad0be74 100644
--- a/engines/kyra/screen.cpp
+++ b/engines/kyra/screen.cpp
@@ -2969,7 +2969,7 @@ bool Screen::loadPaletteTable(const char *filename, int firstPalette) {
}
void Screen::loadPalette(const byte *data, Palette &pal, int bytes) {
- Common::MemoryReadStream stream(data, bytes, false);
+ Common::MemoryReadStream stream(data, bytes, Common::DisposeAfterUse::NO);
if (_isAmiga)
pal.loadAmigaPalette(stream, 0, stream.size() / Palette::kAmigaBytesPerColor);
diff --git a/engines/m4/compression.h b/engines/m4/compression.h
index b00e75995b..938c14dd81 100644
--- a/engines/m4/compression.h
+++ b/engines/m4/compression.h
@@ -59,7 +59,7 @@ public:
MadsPackEntry &getItem(int index) const { return _items[index]; }
MadsPackEntry &operator[](int index) const { return _items[index]; }
Common::MemoryReadStream *getItemStream(int index) {
- return new Common::MemoryReadStream(_items[index].data, _items[index].size, false);
+ return new Common::MemoryReadStream(_items[index].data, _items[index].size, Common::DisposeAfterUse::NO);
}
int getDataOffset() const { return _dataOffset; }
};
diff --git a/engines/made/redreader.cpp b/engines/made/redreader.cpp
index ca3b2af644..303d6ff14b 100644
--- a/engines/made/redreader.cpp
+++ b/engines/made/redreader.cpp
@@ -45,7 +45,7 @@ Common::MemoryReadStream *RedReader::load(const char *redFilename, const char *f
lzhDec->decompress(fd, fileBuf, fileEntry.compSize, fileEntry.origSize);
delete lzhDec;
- return new Common::MemoryReadStream(fileBuf, fileEntry.origSize, true);
+ return new Common::MemoryReadStream(fileBuf, fileEntry.origSize, Common::DisposeAfterUse::YES);
}
diff --git a/engines/parallaction/disk_ns.cpp b/engines/parallaction/disk_ns.cpp
index 383937aa7e..cd036e87d0 100644
--- a/engines/parallaction/disk_ns.cpp
+++ b/engines/parallaction/disk_ns.cpp
@@ -133,7 +133,7 @@ Common::SeekableReadStream *NSArchive::createReadStreamForMember(const Common::S
int offset = _archiveOffsets[index];
int endOffset = _archiveOffsets[index] + _archiveLenghts[index];
- return new Common::SeekableSubReadStream(_stream, offset, endOffset, false);
+ return new Common::SeekableSubReadStream(_stream, offset, endOffset, Common::DisposeAfterUse::NO);
}
bool NSArchive::hasFile(const Common::String &name) {
@@ -670,7 +670,7 @@ public:
ppDecrunchBuffer(src, dest, crlen-8, decrlen);
free(src);
- _stream = new Common::MemoryReadStream(dest, decrlen, true);
+ _stream = new Common::MemoryReadStream(dest, decrlen, Common::DisposeAfterUse::YES);
_dispose = true;
}
diff --git a/engines/parallaction/font.cpp b/engines/parallaction/font.cpp
index daa74cc7dc..eb8869b537 100644
--- a/engines/parallaction/font.cpp
+++ b/engines/parallaction/font.cpp
@@ -678,7 +678,7 @@ void Parallaction_ns::initFonts() {
_introFont = _disk->loadFont("slide");
} else {
_dialogueFont = _disk->loadFont("comic");
- Common::MemoryReadStream stream(_amigaTopazFont, 2600, false);
+ Common::MemoryReadStream stream(_amigaTopazFont, 2600, Common::DisposeAfterUse::NO);
_labelFont = new AmigaFont(stream);
_menuFont = _disk->loadFont("slide");
_introFont = _disk->loadFont("intro");
diff --git a/engines/saga/sound.cpp b/engines/saga/sound.cpp
index 79e5cbeb87..c4bcea9c1a 100644
--- a/engines/saga/sound.cpp
+++ b/engines/saga/sound.cpp
@@ -83,17 +83,17 @@ void Sound::playSoundBuffer(Audio::SoundHandle *handle, SoundBuffer &buffer, int
switch (buffer.soundType) {
#ifdef USE_MAD
case kSoundMP3:
- stream = Audio::makeMP3Stream(new Common::MemoryReadStream(buffer.buffer, buffer.size, true), true);
+ stream = Audio::makeMP3Stream(new Common::MemoryReadStream(buffer.buffer, buffer.size, Common::DisposeAfterUse::YES), true);
break;
#endif
#ifdef USE_VORBIS
case kSoundOGG:
- stream = Audio::makeVorbisStream(new Common::MemoryReadStream(buffer.buffer, buffer.size, true), true);
+ stream = Audio::makeVorbisStream(new Common::MemoryReadStream(buffer.buffer, buffer.size, Common::DisposeAfterUse::YES), true);
break;
#endif
#ifdef USE_FLAC
case kSoundFLAC:
- stream = Audio::makeFlacStream(new Common::MemoryReadStream(buffer.buffer, buffer.size, true), true);
+ stream = Audio::makeFlacStream(new Common::MemoryReadStream(buffer.buffer, buffer.size, Common::DisposeAfterUse::YES), true);
break;
#endif
default:
diff --git a/engines/sci/sfx/core.cpp b/engines/sci/sfx/core.cpp
index e29560ba35..fe044e98ac 100644
--- a/engines/sci/sfx/core.cpp
+++ b/engines/sci/sfx/core.cpp
@@ -1156,10 +1156,10 @@ Audio::AudioStream* SfxState::getAudioStream(uint32 number, uint32 volume, int *
if (audioRes->headerSize > 0) {
// SCI1.1
- Common::MemoryReadStream headerStream(audioRes->header, audioRes->headerSize, false);
+ Common::MemoryReadStream headerStream(audioRes->header, audioRes->headerSize, Common::DisposeAfterUse::NO);
if (readSOLHeader(&headerStream, audioRes->headerSize, size, _audioRate, audioFlags)) {
- Common::MemoryReadStream dataStream(audioRes->data, audioRes->size, false);
+ Common::MemoryReadStream dataStream(audioRes->data, audioRes->size, Common::DisposeAfterUse::NO);
data = readSOLAudio(&dataStream, size, audioFlags, flags);
}
} else {
diff --git a/engines/scumm/saveload.cpp b/engines/scumm/saveload.cpp
index db56c44daf..6dd2ffc0a6 100644
--- a/engines/scumm/saveload.cpp
+++ b/engines/scumm/saveload.cpp
@@ -223,7 +223,7 @@ void ScummEngine_v4::prepareSavegame() {
if (!writeStream->err()) {
// wrap uncompressing MemoryReadStream around the savegame data
_savePreparedSavegame = Common::wrapCompressedReadStream(
- new Common::MemoryReadStream(memStream->getData(), memStream->size(), true));
+ new Common::MemoryReadStream(memStream->getData(), memStream->size(), Common::DisposeAfterUse::YES));
}
}
// free the CompressedWriteStream and MemoryWriteStreamDynamic
diff --git a/engines/sword2/music.cpp b/engines/sword2/music.cpp
index fee75f7638..be3d6f4174 100644
--- a/engines/sword2/music.cpp
+++ b/engines/sword2/music.cpp
@@ -50,22 +50,23 @@
namespace Sword2 {
-// This class behaves like SeekableSubReadStream, except it remembers where the
-// previous read() or seek() took it, so that it can continue from that point
-// the next time. This is because we're frequently streaming two pieces of
-// music from the same file.
-
+/**
+ * This class behaves like SeekableSubReadStream, except it remembers where the
+ * previous read() or seek() took it, so that it can continue from that point
+ * the next time. This is because we're frequently streaming two pieces of
+ * music from the same file.
+ */
class SafeSubReadStream : public Common::SeekableSubReadStream {
protected:
uint32 _previousPos;
public:
- SafeSubReadStream(SeekableReadStream *parentStream, uint32 begin, uint32 end, bool disposeParentStream);
+ SafeSubReadStream(SeekableReadStream *parentStream, uint32 begin, uint32 end);
virtual uint32 read(void *dataPtr, uint32 dataSize);
virtual bool seek(int32 offset, int whence = SEEK_SET);
};
-SafeSubReadStream::SafeSubReadStream(SeekableReadStream *parentStream, uint32 begin, uint32 end, bool disposeParentStream)
- : SeekableSubReadStream(parentStream, begin, end, disposeParentStream) {
+SafeSubReadStream::SafeSubReadStream(SeekableReadStream *parentStream, uint32 begin, uint32 end)
+ : SeekableSubReadStream(parentStream, begin, end, Common::DisposeAfterUse::NO) {
_previousPos = 0;
}
@@ -197,17 +198,17 @@ static Audio::AudioStream *getAudioStream(SoundFileHandle *fh, const char *base,
return makeCLUStream(&fh->file, enc_len);
#ifdef USE_MAD
case kMP3Mode:
- tmp = new SafeSubReadStream(&fh->file, pos, pos + enc_len, false);
+ tmp = new SafeSubReadStream(&fh->file, pos, pos + enc_len);
return Audio::makeMP3Stream(tmp, true);
#endif
#ifdef USE_VORBIS
case kVorbisMode:
- tmp = new SafeSubReadStream(&fh->file, pos, pos + enc_len, false);
+ tmp = new SafeSubReadStream(&fh->file, pos, pos + enc_len);
return Audio::makeVorbisStream(tmp, true);
#endif
#ifdef USE_FLAC
case kFlacMode:
- tmp = new SafeSubReadStream(&fh->file, pos, pos + enc_len, false);
+ tmp = new SafeSubReadStream(&fh->file, pos, pos + enc_len);
return Audio::makeFlacStream(tmp, true);
#endif
default:
@@ -301,7 +302,7 @@ Audio::AudioStream *makePSXCLUStream(Common::File *file, int size) {
byte *buffer = (byte *)malloc(size);
file->read(buffer, size);
- return new Audio::VagStream(new Common::MemoryReadStream(buffer, size, true));
+ return new Audio::VagStream(new Common::MemoryReadStream(buffer, size, Common::DisposeAfterUse::YES));
}
// ----------------------------------------------------------------------------
diff --git a/engines/teenagent/pack.cpp b/engines/teenagent/pack.cpp
index 8e9ec9b5de..fc1918acb4 100644
--- a/engines/teenagent/pack.cpp
+++ b/engines/teenagent/pack.cpp
@@ -78,7 +78,7 @@ Common::SeekableReadStream *Pack::getStream(uint32 id) const {
if (id < 1 || id > count)
return 0;
debug(0, "stream: %04x-%04x", offsets[id - 1], offsets[id]);
- return new Common::SeekableSubReadStream(&file, offsets[id - 1], offsets[id], false);
+ return new Common::SeekableSubReadStream(&file, offsets[id - 1], offsets[id], Common::DisposeAfterUse::NO);
}
} // End of namespace TeenAgent
diff --git a/engines/tinsel/music.cpp b/engines/tinsel/music.cpp
index 6ce1ea7288..568bbbd637 100644
--- a/engines/tinsel/music.cpp
+++ b/engines/tinsel/music.cpp
@@ -874,7 +874,7 @@ bool PCMMusicPlayer::getNextChunk() {
"offset %d (script %d.%d)", sampleCLength, sampleOffset,
_scriptNum, _scriptIndex - 1);
- sampleStream = new Common::MemoryReadStream(buffer, sampleCLength, true);
+ sampleStream = new Common::MemoryReadStream(buffer, sampleCLength, Common::DisposeAfterUse::YES);
delete _curChunk;
_curChunk = makeADPCMStream(sampleStream, true, sampleCLength,
diff --git a/engines/tinsel/sound.cpp b/engines/tinsel/sound.cpp
index ad7027c3e4..bc1ae8c6b9 100644
--- a/engines/tinsel/sound.cpp
+++ b/engines/tinsel/sound.cpp
@@ -133,7 +133,7 @@ bool SoundManager::playSample(int id, Audio::Mixer::SoundType type, Audio::Sound
_vm->_mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, volVoice);
Common::MemoryReadStream *compressedStream =
- new Common::MemoryReadStream(sampleBuf, sampleLen, true);
+ new Common::MemoryReadStream(sampleBuf, sampleLen, Common::DisposeAfterUse::YES);
Audio::AudioStream *sampleStream = 0;
// play it
@@ -284,7 +284,7 @@ bool SoundManager::playSample(int id, int sub, bool bLooped, int x, int y, int p
error(FILE_IS_CORRUPT, _vm->getSampleFile(sampleLanguage));
Common::MemoryReadStream *compressedStream =
- new Common::MemoryReadStream(sampleBuf, sampleLen, true);
+ new Common::MemoryReadStream(sampleBuf, sampleLen, Common::DisposeAfterUse::YES);
Audio::AudioStream *sampleStream = 0;
switch (_soundMode) {
diff --git a/graphics/video/coktelvideo/coktelvideo.cpp b/graphics/video/coktelvideo/coktelvideo.cpp
index e92e470cbe..e014af58e5 100644
--- a/graphics/video/coktelvideo/coktelvideo.cpp
+++ b/graphics/video/coktelvideo/coktelvideo.cpp
@@ -2311,7 +2311,7 @@ Common::MemoryReadStream *Vmd::getExtraData(const char *fileName) {
}
Common::MemoryReadStream *stream =
- new Common::MemoryReadStream(data, _extraData[i].realSize, true);
+ new Common::MemoryReadStream(data, _extraData[i].realSize, Common::DisposeAfterUse::YES);
return stream;
}
diff --git a/gui/ThemeEngine.cpp b/gui/ThemeEngine.cpp
index cb0ba6416d..296541e33a 100644
--- a/gui/ThemeEngine.cpp
+++ b/gui/ThemeEngine.cpp
@@ -696,7 +696,7 @@ bool ThemeEngine::loadDefaultXML() {
#include "themes/default.inc"
;
- if (!_parser->loadBuffer((const byte*)defaultXML, strlen(defaultXML), false))
+ if (!_parser->loadBuffer((const byte*)defaultXML, strlen(defaultXML)))
return false;
_themeName = "ScummVM Classic Theme (Builtin Version)";