From a5a8833c059f28c85e392a3cd22c361d38ef95ff Mon Sep 17 00:00:00 2001 From: Christoph Mallon Date: Sat, 6 Aug 2011 16:30:52 +0200 Subject: COMMON: Add DisposablePtr, which replaces many repeated implementations of a dispose flag. --- backends/platform/psp/mp3.cpp | 6 +----- backends/platform/psp/mp3.h | 4 ++-- 2 files changed, 3 insertions(+), 7 deletions(-) (limited to 'backends/platform') diff --git a/backends/platform/psp/mp3.cpp b/backends/platform/psp/mp3.cpp index 266e31e445..3dbf31112a 100644 --- a/backends/platform/psp/mp3.cpp +++ b/backends/platform/psp/mp3.cpp @@ -179,8 +179,7 @@ bool Mp3PspStream::loadStartAudioModule(const char *modname, int partition){ // TODO: make parallel function for unloading the 1.50 modules Mp3PspStream::Mp3PspStream(Common::SeekableReadStream *inStream, DisposeAfterUse::Flag dispose) : - _inStream(inStream), - _disposeAfterUse(dispose), + _inStream(inStream, dispose), _pcmLength(0), _posInFrame(0), _state(MP3_STATE_INIT), @@ -274,9 +273,6 @@ Mp3PspStream::~Mp3PspStream() { deinitStream(); releaseStreamME(); // free the memory used for this stream - - if (_disposeAfterUse == DisposeAfterUse::YES) - delete _inStream; } void Mp3PspStream::deinitStream() { diff --git a/backends/platform/psp/mp3.h b/backends/platform/psp/mp3.h index 8b01fe4872..f7bfdda254 100644 --- a/backends/platform/psp/mp3.h +++ b/backends/platform/psp/mp3.h @@ -23,6 +23,7 @@ #ifndef SOUND_MP3_PSP_H #define SOUND_MP3_PSP_H +#include "common/ptr.h" #include "common/types.h" #include "common/scummsys.h" @@ -48,8 +49,7 @@ protected: byte _codecInBuffer[3072] __attribute__((aligned(64))); // the codec always needs alignment unsigned long _codecParams[65]__attribute__((aligned(64))); // TODO: change to struct - Common::SeekableReadStream *_inStream; - DisposeAfterUse::Flag _disposeAfterUse; + Common::DisposablePtr _inStream; uint32 _pcmLength; // how many pcm samples we have for this type of file (x2 this for stereo) -- cgit v1.2.3