[Scummvm-tracker] [ScummVM] #10207: TITANIC: Memory leaks in QSoundManager
Colin Snover
trac at scummvm.org
Sun Sep 24 19:13:55 CEST 2017
#10207: TITANIC: Memory leaks in QSoundManager
-------------------------------+-----------------------------
Reporter: csnover | Owner: dreammaster
Type: defect | Status: new
Priority: normal | Component: Engine: Titanic
Resolution: | Keywords:
Game: Starship Titanic |
-------------------------------+-----------------------------
Changes (by csnover):
* status: closed => new
* resolution: fixed =>
Comment:
Audio data is currently leaking:
{{{
2 libc++abi.dylib operator new(unsigned long)
3 scummvm Audio::RawStream<true, false, true>::RawStream(int, bool,
DisposeAfterUse::Flag, Common::SeekableReadStream*)
scummvm/audio/decoders/raw.cpp:55
4 scummvm Audio::makeRawStream(Common::SeekableReadStream*, int,
unsigned char, DisposeAfterUse::Flag) scummvm/audio/decoders/raw.cpp:214
5 scummvm Audio::makeRawStream(unsigned char const*, unsigned int, int,
unsigned char, DisposeAfterUse::Flag) scummvm/audio/decoders/raw.cpp:221
6 scummvm Audio::makeWAVStream(Common::SeekableReadStream*,
DisposeAfterUse::Flag) scummvm/audio/decoders/wave.cpp:227
7 scummvm Titanic::CWaveFile::createAudioStream()
scummvm/engines/titanic/sound/wave_file.cpp:168
8 scummvm Titanic::CWaveFile::play(int, unsigned char)
scummvm/engines/titanic/sound/wave_file.cpp:201
9 scummvm Titanic::QMixer::qsWaveMixPump()
scummvm/engines/titanic/sound/qmixer.cpp:234
10 scummvm Titanic::QMixer::qsWaveMixPlayEx(int, unsigned int,
Titanic::CWaveFile*, int, Titanic::QMIXPLAYPARAMS const&)
scummvm/engines/titanic/sound/qmixer.cpp:170
11 scummvm Titanic::QSoundManager::playWave(Titanic::CWaveFile*, int,
unsigned int, Titanic::CProximity&)
scummvm/engines/titanic/sound/sound_manager.cpp:426
12 scummvm Titanic::CGameObject::playSound(Titanic::CString const&,
unsigned int, int, bool) scummvm/engines/titanic/core/game_object.cpp:789
13 scummvm
Titanic::CPETSounds::PETPlaySoundMsg(Titanic::CPETPlaySoundMsg*)
scummvm/engines/titanic/game/pet/pet_sounds.cpp:47
14 scummvm Titanic::CMessage::perform(Titanic::CTreeItem*)
scummvm/engines/titanic/messages/messages.cpp:107
15 scummvm Titanic::CMessage::execute(Titanic::CTreeItem*,
Titanic::ClassDef const*, int)
scummvm/engines/titanic/messages/messages.cpp:60
16 scummvm Titanic::CPetControl::playSound(int)
scummvm/engines/titanic/pet_control/pet_control.cpp:574
17 scummvm Titanic::TTnpcScript::setDial(int, int)
scummvm/engines/titanic/true_talk/tt_npc_script.cpp:641
18 scummvm Titanic::TTnpcScript::updateCurrentDial(bool)
scummvm/engines/titanic/true_talk/tt_npc_script.cpp:1020
19 scummvm Titanic::DeskbotScript::process(Titanic::TTroomScript const*,
Titanic::TTsentence const*)
scummvm/engines/titanic/true_talk/deskbot_script.cpp:81
20 scummvm Titanic::CScriptHandler::processInput(Titanic::TTroomScript*,
Titanic::TTnpcScript*, Titanic::TTstring const&)
scummvm/engines/titanic/true_talk/script_handler.cpp:98
21 scummvm
Titanic::CTrueTalkManager::processInput(Titanic::CTrueTalkNPC*,
Titanic::CTextInputMsg*, Titanic::CViewItem*)
scummvm/engines/titanic/true_talk/true_talk_manager.cpp:334
22 scummvm Titanic::CTrueTalkNPC::processInput(Titanic::CTextInputMsg*,
Titanic::CViewItem*) scummvm/engines/titanic/npcs/true_talk_npc.cpp:232
23 scummvm Titanic::CTrueTalkNPC::TextInputMsg(Titanic::CTextInputMsg*)
scummvm/engines/titanic/npcs/true_talk_npc.cpp:83
24 scummvm Titanic::CMessage::perform(Titanic::CTreeItem*)
scummvm/engines/titanic/messages/messages.cpp:107
25 scummvm Titanic::CMessage::execute(Titanic::CTreeItem*,
Titanic::ClassDef const*, int)
scummvm/engines/titanic/messages/messages.cpp:60
26 scummvm Titanic::CPetConversations::textLineEntered(Titanic::CString
const&) scummvm/engines/titanic/pet_control/pet_conversations.cpp:507
27 scummvm Titanic::CPetConversations::handleKey(Common::KeyState
const&) scummvm/engines/titanic/pet_control/pet_conversations.cpp:490
28 scummvm Titanic::CPetConversations::KeyCharMsg(Titanic::CKeyCharMsg*)
scummvm/engines/titanic/pet_control/pet_conversations.cpp:224
29 scummvm Titanic::CPetControl::KeyCharMsg(Titanic::CKeyCharMsg*)
scummvm/engines/titanic/pet_control/pet_control.cpp:339
30 scummvm Titanic::CMessage::perform(Titanic::CTreeItem*)
scummvm/engines/titanic/messages/messages.cpp:107
31 scummvm Titanic::CMessage::execute(Titanic::CTreeItem*,
Titanic::ClassDef const*, int)
scummvm/engines/titanic/messages/messages.cpp:60
32 scummvm Titanic::CInputHandler::dispatchMessage(Titanic::CMessage*)
scummvm/engines/titanic/input_handler.cpp:154
33 scummvm Titanic::CInputHandler::processMessage(Titanic::CMessage*)
scummvm/engines/titanic/input_handler.cpp:84
34 scummvm Titanic::CInputHandler::handleMessage(Titanic::CMessage&,
bool) scummvm/engines/titanic/input_handler.cpp:72
35 scummvm Titanic::CInputTranslator::keyDown(Common::KeyState const&)
scummvm/engines/titanic/input_translator.cpp:91
36 scummvm Titanic::CMainGameWindow::keyDown(Common::KeyState)
scummvm/engines/titanic/main_game_window.cpp:367
37 scummvm Titanic::Events::pollEvents()
scummvm/engines/titanic/events.cpp:95
38 scummvm Titanic::Events::pollEventsAndWait()
scummvm/engines/titanic/events.cpp:112
39 scummvm Titanic::TitanicEngine::run()
scummvm/engines/titanic/titanic.cpp:157
}}}
{{{
1 libsystem_malloc.dylib malloc
2 scummvm Audio::makeWAVStream(Common::SeekableReadStream*,
DisposeAfterUse::Flag) scummvm/audio/decoders/wave.cpp:220
3 scummvm Titanic::CWaveFile::createAudioStream()
scummvm/engines/titanic/sound/wave_file.cpp:168
4 scummvm Titanic::CWaveFile::play(int, unsigned char)
scummvm/engines/titanic/sound/wave_file.cpp:201
5 scummvm Titanic::QMixer::qsWaveMixPump()
scummvm/engines/titanic/sound/qmixer.cpp:234
6 scummvm Titanic::QMixer::qsWaveMixPlayEx(int, unsigned int,
Titanic::CWaveFile*, int, Titanic::QMIXPLAYPARAMS const&)
scummvm/engines/titanic/sound/qmixer.cpp:170
7 scummvm Titanic::QSoundManager::playWave(Titanic::CWaveFile*, int,
unsigned int, Titanic::CProximity&)
scummvm/engines/titanic/sound/sound_manager.cpp:426
8 scummvm Titanic::CGameObject::playSound(Titanic::CString const&,
unsigned int, int, bool) scummvm/engines/titanic/core/game_object.cpp:789
9 scummvm Titanic::CDeskbot::MovieEndMsg(Titanic::CMovieEndMsg*)
scummvm/engines/titanic/npcs/deskbot.cpp:123
10 scummvm Titanic::CMessage::perform(Titanic::CTreeItem*)
scummvm/engines/titanic/messages/messages.cpp:107
11 scummvm Titanic::CMessage::execute(Titanic::CTreeItem*,
Titanic::ClassDef const*, int)
scummvm/engines/titanic/messages/messages.cpp:60
12 scummvm Titanic::CGameManager::updateMovies()
scummvm/engines/titanic/game_manager.cpp:250
13 scummvm Titanic::CGameManager::update()
scummvm/engines/titanic/game_manager.cpp:170
14 scummvm Titanic::CMainGameWindow::onIdle()
scummvm/engines/titanic/main_game_window.cpp:264
15 scummvm Titanic::Events::checkForNextFrameCounter()
scummvm/engines/titanic/events.cpp:142
16 scummvm Titanic::Events::pollEvents()
scummvm/engines/titanic/events.cpp:44
17 scummvm Titanic::Events::pollEventsAndWait()
scummvm/engines/titanic/events.cpp:112
18 scummvm Titanic::TitanicEngine::run()
scummvm/engines/titanic/titanic.cpp:157
}}}
{{{
2 libc++abi.dylib operator new(unsigned long)
3 scummvm Titanic::CWaveFile::createAudioStream()
scummvm/engines/titanic/sound/wave_file.cpp:169
4 scummvm Titanic::CWaveFile::play(int, unsigned char)
scummvm/engines/titanic/sound/wave_file.cpp:201
5 scummvm Titanic::QMixer::qsWaveMixPump()
scummvm/engines/titanic/sound/qmixer.cpp:234
6 scummvm Titanic::Events::pollEventsAndWait()
scummvm/engines/titanic/events.cpp:118
7 scummvm Titanic::TitanicEngine::run()
scummvm/engines/titanic/titanic.cpp:157
}}}
{{{
1 libsystem_malloc.dylib malloc
2 scummvm Titanic::CWaveFile::loadSound(Titanic::CString const&)
scummvm/engines/titanic/sound/wave_file.cpp:103
3 scummvm Titanic::QSoundManager::loadSound(Titanic::CString const&)
scummvm/engines/titanic/sound/sound_manager.cpp:126
4 scummvm Titanic::CSound::loadSound(Titanic::CString const&)
scummvm/engines/titanic/sound/sound.cpp:138
5 scummvm Titanic::CSound::playSound(Titanic::CString const&,
Titanic::CProximity&) scummvm/engines/titanic/sound/sound.cpp:158
6 scummvm Titanic::CGameObject::playGlobalSound(Titanic::CString
const&, Titanic::VolumeMode, bool, bool, int, Audio::Mixer::SoundType)
scummvm/engines/titanic/core/game_object.cpp:513
7 scummvm
Titanic::CAutoMusicPlayerBase::LoadSuccessMsg(Titanic::CLoadSuccessMsg*)
scummvm/engines/titanic/sound/auto_music_player_base.cpp:73
8 scummvm Titanic::CMessage::perform(Titanic::CTreeItem*)
scummvm/engines/titanic/messages/messages.cpp:107
9 scummvm Titanic::CMessage::execute(Titanic::CTreeItem*,
Titanic::ClassDef const*, int)
scummvm/engines/titanic/messages/messages.cpp:60
10 scummvm Titanic::CGameManager::postLoad(Titanic::CProjectItem*)
scummvm/engines/titanic/game_manager.cpp:104
11 scummvm Titanic::CProjectItem::postLoad()
scummvm/engines/titanic/core/project_item.cpp:340
12 scummvm Titanic::CProjectItem::loadGame(int)
scummvm/engines/titanic/core/project_item.cpp:222
13 scummvm Titanic::CMainGameWindow::applicationStarting()
scummvm/engines/titanic/main_game_window.cpp:91
14 scummvm Titanic::TitanicEngine::initialize()
scummvm/engines/titanic/titanic.cpp:127
15 scummvm Titanic::TitanicEngine::run()
scummvm/engines/titanic/titanic.cpp:154
}}}
--
Ticket URL: <https://bugs.scummvm.org/ticket/10207#comment:4>
ScummVM <https://bugs.scummvm.org>
ScummVM
More information about the Scummvm-tracker
mailing list