mirror of
https://github.com/libretro/scummvm.git
synced 2025-01-18 07:53:12 +00:00
fixed memory leak when restarting
svn-id: r8661
This commit is contained in:
parent
1ec54d032e
commit
aa19687a4c
@ -95,14 +95,13 @@ Sound::Sound(Scumm *parent) {
|
||||
_current_cache = 0;
|
||||
_current_cd_sound = 0;
|
||||
|
||||
_sfxFile = 0;
|
||||
|
||||
_bundle = new Bundle();
|
||||
}
|
||||
|
||||
Sound::~Sound() {
|
||||
if (_sfxFile) {
|
||||
_sfxFile->close();
|
||||
delete _sfxFile;
|
||||
}
|
||||
delete _sfxFile;
|
||||
delete _bundle;
|
||||
}
|
||||
|
||||
@ -771,9 +770,10 @@ void Sound::setupSound() {
|
||||
|
||||
_scumm->_imuse->set_master_volume(_sound_volume_master);
|
||||
_scumm->_imuse->set_music_volume(_sound_volume_music);
|
||||
_scumm->_mixer->setVolume(_sound_volume_sfx * _sound_volume_master / 255);
|
||||
_scumm->_mixer->setMusicVolume(_sound_volume_music);
|
||||
}
|
||||
_scumm->_mixer->setVolume(_sound_volume_sfx * _sound_volume_master / 255);
|
||||
_scumm->_mixer->setMusicVolume(_sound_volume_music);
|
||||
delete _sfxFile;
|
||||
_sfxFile = openSfxFile();
|
||||
}
|
||||
|
||||
@ -1065,7 +1065,7 @@ void Sound::bundleMusicHandler(Scumm *scumm) {
|
||||
if (_pauseBundleMusic)
|
||||
return;
|
||||
|
||||
if (_musicBundleToBeRemoved == true) {
|
||||
if (_musicBundleToBeRemoved) {
|
||||
_scumm->_timer->releaseProcedure(&music_handler);
|
||||
_nameBundleMusic = "";
|
||||
if (_bundleMusicTrack != -1) {
|
||||
@ -1554,7 +1554,7 @@ int Sound::playMP3CDTrack(int track, int num_loops, int start, int delay) {
|
||||
}
|
||||
|
||||
int Sound::stopMP3CD() {
|
||||
if (_dig_cd_playing == true) {
|
||||
if (_dig_cd_playing) {
|
||||
_scumm->_mixer->stop(_dig_cd_index);
|
||||
_dig_cd_playing = false;
|
||||
_dig_cd_track = 0;
|
||||
@ -1566,8 +1566,8 @@ int Sound::stopMP3CD() {
|
||||
return -1;
|
||||
}
|
||||
|
||||
int Sound::pollMP3CD() const{
|
||||
if (_dig_cd_playing == true)
|
||||
int Sound::pollMP3CD() const {
|
||||
if (_dig_cd_playing)
|
||||
return 1;
|
||||
return 0;
|
||||
}
|
||||
|
@ -93,11 +93,11 @@ protected:
|
||||
bool _dig_cd_playing;
|
||||
|
||||
DigitalTrackInfo *_track_info[CACHE_TRACKS];
|
||||
int _current_cache;
|
||||
|
||||
Scumm *_scumm;
|
||||
|
||||
public:
|
||||
int _current_cache;
|
||||
int32 _bundleMusicPosition;
|
||||
|
||||
int _talkChannel; /* Mixer channel actor is talking on */
|
||||
|
Loading…
x
Reference in New Issue
Block a user