mirror of
https://github.com/libretro/scummvm.git
synced 2024-11-30 12:50:51 +00:00
Move DisposeAfterUse::Flag from Common to global namespace, and into a new header common/types.h
svn-id: r47180
This commit is contained in:
parent
474d49946f
commit
0cf53b025d
@ -26,7 +26,7 @@
|
||||
#ifndef COMMON_STREAM_H
|
||||
#define COMMON_STREAM_H
|
||||
|
||||
#include "common/scummsys.h"
|
||||
#include "common/types.h"
|
||||
#include "common/endian.h"
|
||||
|
||||
namespace Common {
|
||||
@ -391,10 +391,6 @@ public:
|
||||
};
|
||||
|
||||
|
||||
namespace DisposeAfterUse {
|
||||
enum Flag { NO, YES };
|
||||
}
|
||||
|
||||
/**
|
||||
* SubReadStream provides access to a ReadStream restricted to the range
|
||||
* [currentPosition, currentPosition+end).
|
||||
|
35
common/types.h
Normal file
35
common/types.h
Normal file
@ -0,0 +1,35 @@
|
||||
/* ScummVM - Graphic Adventure Engine
|
||||
*
|
||||
* ScummVM is the legal property of its developers, whose names
|
||||
* are too numerous to list here. Please refer to the COPYRIGHT
|
||||
* file distributed with this source distribution.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version 2
|
||||
* of the License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*
|
||||
* $URL$
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef COMMON_TYPES_H
|
||||
#define COMMON_TYPES_H
|
||||
|
||||
#include "common/scummsys.h"
|
||||
|
||||
namespace DisposeAfterUse {
|
||||
enum Flag { NO, YES };
|
||||
}
|
||||
|
||||
|
||||
#endif
|
@ -84,7 +84,7 @@ const uint8 *PCjrSound::getVoicePointer(uint voiceNum) {
|
||||
}
|
||||
|
||||
IIgsSample::IIgsSample(uint8 *data, uint32 len, int resnum, SoundMgr &manager) : AgiSound(manager) {
|
||||
Common::MemoryReadStream stream(data, len, Common::DisposeAfterUse::YES);
|
||||
Common::MemoryReadStream stream(data, len, 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
|
||||
|
@ -209,7 +209,7 @@ int loadOverlay(const char *scriptName) {
|
||||
|
||||
debug(1, "OVL loading done...");
|
||||
|
||||
Common::MemoryReadStream s(unpackedBuffer, unpackedSize, Common::DisposeAfterUse::YES);
|
||||
Common::MemoryReadStream s(unpackedBuffer, unpackedSize, 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, Common::DisposeAfterUse::YES);
|
||||
Common::MemoryReadStream s2(unpackedBuffer, unpackedSize, DisposeAfterUse::YES);
|
||||
unpackedBuffer = NULL;
|
||||
|
||||
ovlData->specialString1Length = s2.readUint16BE();
|
||||
|
@ -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, Common::DisposeAfterUse::YES);
|
||||
return new Common::SeekableSubReadStream(gjdFile, resInfo.offset, resInfo.offset + resInfo.size, DisposeAfterUse::YES);
|
||||
}
|
||||
|
||||
|
||||
|
@ -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(), Common::DisposeAfterUse::YES);
|
||||
Common::SeekableSubReadStream *sub = new Common::SeekableSubReadStream(savefile, metaDataSize, savefile->size(), DisposeAfterUse::YES);
|
||||
|
||||
// Move to the beginning of the substream
|
||||
sub->seek(0, SEEK_SET);
|
||||
|
@ -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, Common::DisposeAfterUse::YES);
|
||||
return new Common::SeekableSubReadStream(parent, fDesc->_value.offset, fDesc->_value.offset + fDesc->_value.size, 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, Common::DisposeAfterUse::NO);
|
||||
return new Common::MemoryReadStream(fDesc->_value.data, fDesc->_value.size, DisposeAfterUse::NO);
|
||||
}
|
||||
|
||||
// ResFileLoader implementations
|
||||
|
@ -152,7 +152,7 @@ Common::Error KyraEngine_HoF::loadGameState(int slot) {
|
||||
|
||||
int loadedZTable = _characterShapeFile;
|
||||
|
||||
Common::SeekableSubReadStreamEndian in(saveFile, saveFile->pos(), saveFile->size(), !header.originalSave, Common::DisposeAfterUse::YES);
|
||||
Common::SeekableSubReadStreamEndian in(saveFile, saveFile->pos(), saveFile->size(), !header.originalSave, DisposeAfterUse::YES);
|
||||
|
||||
_screen->hideMouse();
|
||||
|
||||
|
@ -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, Common::DisposeAfterUse::YES);
|
||||
Common::SeekableSubReadStreamEndian in(saveFile, saveFile->pos(), saveFile->size(), !header.originalSave, DisposeAfterUse::YES);
|
||||
|
||||
for (int i = 0; i < 4; i++) {
|
||||
LoLCharacter *c = &_characters[i];
|
||||
|
@ -150,7 +150,7 @@ Common::Error KyraEngine_MR::loadGameState(int slot) {
|
||||
|
||||
int curShapes = _characterShapeFile;
|
||||
|
||||
Common::SeekableSubReadStreamEndian in(saveFile, saveFile->pos(), saveFile->size(), !header.originalSave, Common::DisposeAfterUse::YES);
|
||||
Common::SeekableSubReadStreamEndian in(saveFile, saveFile->pos(), saveFile->size(), !header.originalSave, DisposeAfterUse::YES);
|
||||
|
||||
_screen->hideMouse();
|
||||
|
||||
|
@ -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, Common::DisposeAfterUse::NO);
|
||||
Common::MemoryReadStream stream(data, bytes, DisposeAfterUse::NO);
|
||||
|
||||
if (_isAmiga)
|
||||
pal.loadAmigaPalette(stream, 0, stream.size() / Palette::kAmigaBytesPerColor);
|
||||
|
@ -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, Common::DisposeAfterUse::NO);
|
||||
return new Common::MemoryReadStream(_items[index].data, _items[index].size, DisposeAfterUse::NO);
|
||||
}
|
||||
int getDataOffset() const { return _dataOffset; }
|
||||
};
|
||||
|
@ -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, Common::DisposeAfterUse::YES);
|
||||
return new Common::MemoryReadStream(fileBuf, fileEntry.origSize, DisposeAfterUse::YES);
|
||||
|
||||
}
|
||||
|
||||
|
@ -247,7 +247,7 @@ Common::SeekableReadStream *MohawkBitmap::decompressLZ(Common::SeekableReadStrea
|
||||
}
|
||||
}
|
||||
|
||||
return new Common::MemoryReadStream(outputData, uncompressedSize, Common::DisposeAfterUse::YES);
|
||||
return new Common::MemoryReadStream(outputData, uncompressedSize, DisposeAfterUse::YES);
|
||||
}
|
||||
|
||||
void MohawkBitmap::unpackLZ() {
|
||||
@ -316,7 +316,7 @@ void MohawkBitmap::unpackRiven() {
|
||||
}
|
||||
|
||||
delete _data;
|
||||
_data = new Common::MemoryReadStream(uncompressedData, _header.bytesPerRow * _header.height, Common::DisposeAfterUse::YES);
|
||||
_data = new Common::MemoryReadStream(uncompressedData, _header.bytesPerRow * _header.height, DisposeAfterUse::YES);
|
||||
}
|
||||
|
||||
static byte getLastTwoBits(byte c) {
|
||||
|
@ -263,7 +263,7 @@ void MohawkEngine_LivingBooks::loadANI(uint16 resourceId) {
|
||||
|
||||
Common::SeekableSubReadStreamEndian *MohawkEngine_LivingBooks::wrapStreamEndian(uint32 tag, uint16 id) {
|
||||
Common::SeekableReadStream *dataStream = getRawData(tag, id);
|
||||
return new Common::SeekableSubReadStreamEndian(dataStream, 0, dataStream->size(), isBigEndian(), Common::DisposeAfterUse::YES);
|
||||
return new Common::SeekableSubReadStreamEndian(dataStream, 0, dataStream->size(), isBigEndian(), DisposeAfterUse::YES);
|
||||
}
|
||||
|
||||
Common::String MohawkEngine_LivingBooks::getStringFromConfig(Common::String section, Common::String key) {
|
||||
|
@ -441,13 +441,13 @@ Audio::AudioStream *Sound::makeMohawkWaveStream(Common::SeekableReadStream *stre
|
||||
flags |= Audio::Mixer::FLAG_LOOP;
|
||||
return Audio::makeLinearInputStream(data_chunk.audio_data, data_chunk.size, data_chunk.sample_rate, flags, data_chunk.loopStart, data_chunk.loopEnd);
|
||||
} else if (data_chunk.encoding == kCodecADPCM) {
|
||||
Common::MemoryReadStream *dataStream = new Common::MemoryReadStream(data_chunk.audio_data, data_chunk.size, Common::DisposeAfterUse::YES);
|
||||
Common::MemoryReadStream *dataStream = new Common::MemoryReadStream(data_chunk.audio_data, data_chunk.size, DisposeAfterUse::YES);
|
||||
uint32 blockAlign = data_chunk.channels * data_chunk.bitsPerSample / 8;
|
||||
|
||||
return makeLoopingAudioStream(Audio::makeADPCMStream(dataStream, true, data_chunk.size, Audio::kADPCMIma, data_chunk.sample_rate, data_chunk.channels, blockAlign), loop ? 0 : 1);
|
||||
} else if (data_chunk.encoding == kCodecMPEG2) {
|
||||
#ifdef USE_MAD
|
||||
Common::MemoryReadStream *dataStream = new Common::MemoryReadStream(data_chunk.audio_data, data_chunk.size, Common::DisposeAfterUse::YES);
|
||||
Common::MemoryReadStream *dataStream = new Common::MemoryReadStream(data_chunk.audio_data, data_chunk.size, DisposeAfterUse::YES);
|
||||
return Audio::makeLoopingAudioStream(Audio::makeMP3Stream(dataStream, true), loop ? 0 : 1);
|
||||
#else
|
||||
warning ("MAD library not included - unable to play MP2 audio");
|
||||
|
@ -467,7 +467,7 @@ int QTPlayer::readCMOV(MOVatom atom) {
|
||||
|
||||
// Load data into a new MemoryReadStream and assign _fd to be that
|
||||
Common::SeekableReadStream *oldStream = _fd;
|
||||
_fd = new Common::MemoryReadStream(uncompressedData, uncompressedSize, Common::DisposeAfterUse::YES);
|
||||
_fd = new Common::MemoryReadStream(uncompressedData, uncompressedSize, DisposeAfterUse::YES);
|
||||
|
||||
// Read the contents of the uncompressed data
|
||||
MOVatom a = { MKID_BE('moov'), 0, uncompressedSize };
|
||||
@ -1224,7 +1224,7 @@ void QTPlayer::updateAudioBuffer() {
|
||||
}
|
||||
|
||||
// Now queue the buffer
|
||||
_audStream->queueAudioStream(createAudioStream(new Common::MemoryReadStream(wStream->getData(), wStream->size(), Common::DisposeAfterUse::YES)));
|
||||
_audStream->queueAudioStream(createAudioStream(new Common::MemoryReadStream(wStream->getData(), wStream->size(), DisposeAfterUse::YES)));
|
||||
delete wStream;
|
||||
}
|
||||
}
|
||||
|
@ -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, Common::DisposeAfterUse::NO);
|
||||
return new Common::SeekableSubReadStream(_stream, offset, endOffset, 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, Common::DisposeAfterUse::YES);
|
||||
_stream = new Common::MemoryReadStream(dest, decrlen, DisposeAfterUse::YES);
|
||||
_dispose = true;
|
||||
}
|
||||
|
||||
|
@ -678,7 +678,7 @@ void Parallaction_ns::initFonts() {
|
||||
_introFont = _disk->loadFont("slide");
|
||||
} else {
|
||||
_dialogueFont = _disk->loadFont("comic");
|
||||
Common::MemoryReadStream stream(_amigaTopazFont, 2600, Common::DisposeAfterUse::NO);
|
||||
Common::MemoryReadStream stream(_amigaTopazFont, 2600, DisposeAfterUse::NO);
|
||||
_labelFont = new AmigaFont(stream);
|
||||
_menuFont = _disk->loadFont("slide");
|
||||
_introFont = _disk->loadFont("intro");
|
||||
|
@ -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, Common::DisposeAfterUse::YES), true);
|
||||
stream = Audio::makeMP3Stream(new Common::MemoryReadStream(buffer.buffer, buffer.size, DisposeAfterUse::YES), true);
|
||||
break;
|
||||
#endif
|
||||
#ifdef USE_VORBIS
|
||||
case kSoundOGG:
|
||||
stream = Audio::makeVorbisStream(new Common::MemoryReadStream(buffer.buffer, buffer.size, Common::DisposeAfterUse::YES), true);
|
||||
stream = Audio::makeVorbisStream(new Common::MemoryReadStream(buffer.buffer, buffer.size, DisposeAfterUse::YES), true);
|
||||
break;
|
||||
#endif
|
||||
#ifdef USE_FLAC
|
||||
case kSoundFLAC:
|
||||
stream = Audio::makeFlacStream(new Common::MemoryReadStream(buffer.buffer, buffer.size, Common::DisposeAfterUse::YES), true);
|
||||
stream = Audio::makeFlacStream(new Common::MemoryReadStream(buffer.buffer, buffer.size, DisposeAfterUse::YES), true);
|
||||
break;
|
||||
#endif
|
||||
default:
|
||||
|
@ -218,10 +218,10 @@ Audio::RewindableAudioStream *AudioPlayer::getAudioStream(uint32 number, uint32
|
||||
|
||||
if (audioRes->headerSize > 0) {
|
||||
// SCI1.1
|
||||
Common::MemoryReadStream headerStream(audioRes->header, audioRes->headerSize, Common::DisposeAfterUse::NO);
|
||||
Common::MemoryReadStream headerStream(audioRes->header, audioRes->headerSize, DisposeAfterUse::NO);
|
||||
|
||||
if (readSOLHeader(&headerStream, audioRes->headerSize, size, _audioRate, audioFlags)) {
|
||||
Common::MemoryReadStream dataStream(audioRes->data, audioRes->size, Common::DisposeAfterUse::NO);
|
||||
Common::MemoryReadStream dataStream(audioRes->data, audioRes->size, DisposeAfterUse::NO);
|
||||
data = readSOLAudio(&dataStream, size, audioFlags, flags);
|
||||
}
|
||||
} else {
|
||||
@ -229,7 +229,7 @@ Audio::RewindableAudioStream *AudioPlayer::getAudioStream(uint32 number, uint32
|
||||
if (audioRes->size > 4) {
|
||||
if (memcmp(audioRes->data, "RIFF", 4) == 0) {
|
||||
// WAVE detected
|
||||
Common::MemoryReadStream *waveStream = new Common::MemoryReadStream(audioRes->data, audioRes->size, Common::DisposeAfterUse::NO);
|
||||
Common::MemoryReadStream *waveStream = new Common::MemoryReadStream(audioRes->data, audioRes->size, DisposeAfterUse::NO);
|
||||
audioStream = Audio::makeWAVStream(waveStream, true);
|
||||
}
|
||||
}
|
||||
|
@ -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(), Common::DisposeAfterUse::YES));
|
||||
new Common::MemoryReadStream(memStream->getData(), memStream->size(), DisposeAfterUse::YES));
|
||||
}
|
||||
}
|
||||
// free the CompressedWriteStream and MemoryWriteStreamDynamic
|
||||
|
@ -66,7 +66,7 @@ public:
|
||||
};
|
||||
|
||||
SafeSubReadStream::SafeSubReadStream(SeekableReadStream *parentStream, uint32 begin, uint32 end)
|
||||
: SeekableSubReadStream(parentStream, begin, end, Common::DisposeAfterUse::NO) {
|
||||
: SeekableSubReadStream(parentStream, begin, end, DisposeAfterUse::NO) {
|
||||
_previousPos = 0;
|
||||
}
|
||||
|
||||
@ -302,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, Common::DisposeAfterUse::YES));
|
||||
return new Audio::VagStream(new Common::MemoryReadStream(buffer, size, DisposeAfterUse::YES));
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
|
@ -81,7 +81,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], Common::DisposeAfterUse::NO);
|
||||
return new Common::SeekableSubReadStream(&file, offsets[id - 1], offsets[id], DisposeAfterUse::NO);
|
||||
}
|
||||
|
||||
} // End of namespace TeenAgent
|
||||
|
@ -874,7 +874,7 @@ bool PCMMusicPlayer::getNextChunk() {
|
||||
"offset %d (script %d.%d)", sampleCLength, sampleOffset,
|
||||
_scriptNum, _scriptIndex - 1);
|
||||
|
||||
sampleStream = new Common::MemoryReadStream(buffer, sampleCLength, Common::DisposeAfterUse::YES);
|
||||
sampleStream = new Common::MemoryReadStream(buffer, sampleCLength, DisposeAfterUse::YES);
|
||||
|
||||
delete _curChunk;
|
||||
_curChunk = makeADPCMStream(sampleStream, true, sampleCLength,
|
||||
|
@ -132,7 +132,7 @@ bool SoundManager::playSample(int id, Audio::Mixer::SoundType type, Audio::Sound
|
||||
_vm->_mixer->setVolumeForSoundType(Audio::Mixer::kSpeechSoundType, _vm->_config->_voiceVolume);
|
||||
|
||||
Common::MemoryReadStream *compressedStream =
|
||||
new Common::MemoryReadStream(sampleBuf, sampleLen, Common::DisposeAfterUse::YES);
|
||||
new Common::MemoryReadStream(sampleBuf, sampleLen, DisposeAfterUse::YES);
|
||||
Audio::AudioStream *sampleStream = 0;
|
||||
|
||||
// play it
|
||||
@ -283,7 +283,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, Common::DisposeAfterUse::YES);
|
||||
new Common::MemoryReadStream(sampleBuf, sampleLen, DisposeAfterUse::YES);
|
||||
Audio::AudioStream *sampleStream = 0;
|
||||
|
||||
switch (_soundMode) {
|
||||
|
@ -2336,7 +2336,7 @@ Common::MemoryReadStream *Vmd::getExtraData(const char *fileName) {
|
||||
}
|
||||
|
||||
Common::MemoryReadStream *stream =
|
||||
new Common::MemoryReadStream(data, _extraData[i].realSize, Common::DisposeAfterUse::YES);
|
||||
new Common::MemoryReadStream(data, _extraData[i].realSize, DisposeAfterUse::YES);
|
||||
|
||||
return stream;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user