Opened 5 months ago

Closed 5 months ago

#11451 closed defect (fixed)

WIN32: ScummVM crashes when no audio devices are present

Reported by: jeditobe Owned by: SupSuper
Priority: normal Component: Port: Win32
Keywords: Windows XP, soundcard Cc:
Game:

Description (last modified by jeditobe)

scummvm-2.1.1-win32 and scummvm-2.1.2-win32 no longer work in Windows XP 32 bit without sound card

Virtual Box 5.2.18, no soundcard, Win XP S33
https://sun9-68.userapi.com/c858420/v858420439/1eb4fb/mdh3JnUu1F0.jpg

Same OS but WITH SoundCard:

Attachments (5)

screenshot-1.png (122.4 KB ) - added by jeditobe 5 months ago.
4d7e_appcompat.txt (7.6 KB ) - added by jeditobe 5 months ago.
Capture4.PNG (46.6 KB ) - added by jeditobe 5 months ago.
Capture5.PNG (198.5 KB ) - added by jeditobe 5 months ago.
Capture6.PNG (100.8 KB ) - added by jeditobe 5 months ago.

Download all attachments as: .zip

Change History (13)

comment:1 by jeditobe, 5 months ago

Description: modified (diff)

by jeditobe, 5 months ago

Attachment: screenshot-1.png added

comment:2 by jeditobe, 5 months ago

Description: modified (diff)

comment:3 by lotharsm, 5 months ago

"Regression" starting with ScummVM 2.1.1 since that was the first version that came with TTS enabled by default on the Win32 platform.

It looks like the Win32 TTS code is not checking (or gracefully switching to the "not initialized" state when there are no audio devices present:

Thread 1 received signal SIGSEGV, Segmentation fault.
WindowsTextToSpeechManager::updateVoices (this=0x32f75b0)
    at backends/text-to-speech/windows/windows-text-to-speech.cpp:470
470             _voice->SetVolume(0);
(gdb) backtrace
#0  WindowsTextToSpeechManager::updateVoices (this=0x32f75b0)
    at backends/text-to-speech/windows/windows-text-to-speech.cpp:470
#1  0x000000000052ea05 in WindowsTextToSpeechManager::setLanguage (
    this=this@entry=0x32f75b0, language=...)
    at backends/text-to-speech/windows/windows-text-to-speech.cpp:348
#2  0x00000000004799de in GUI::GuiManager::initTextToSpeech (
    this=this@entry=0xd177f00) at gui/gui-manager.cpp:659
#3  0x000000000047a638 in GUI::GuiManager::GuiManager (this=0xd177f00)
    at gui/gui-manager.cpp:81
Last edited 5 months ago by lotharsm (previous) (diff)

comment:4 by lotharsm, 5 months ago

Summary: scummvm-2.1.1-win32 and scummvm-2.1.2-win32 no longer work in Windows XP 32 bit without sound cardWIN32: ScummVM crashes when no audio devices are present

by jeditobe, 5 months ago

Attachment: 4d7e_appcompat.txt added

by jeditobe, 5 months ago

Attachment: Capture4.PNG added

comment:5 by lotharsm, 5 months ago

@jeditobe, can you please try the latest snapshot at https://www.scummvm.org/frs/daily/scummvm-snapshot-win32.exe? This version worked fine for me since it contains a fix.

Please also let me know if this fixes your issues with Windows 2003, since I suspect it doesn't have the TTS stuff. However, ReactOS still might be broken, but that's a whole other topic.

by jeditobe, 5 months ago

Attachment: Capture5.PNG added

comment:6 by jeditobe, 5 months ago


it works! looks like this bug is fixed

by jeditobe, 5 months ago

Attachment: Capture6.PNG added

comment:7 by jeditobe, 5 months ago

ReactOS issue is fixed as well \0/


comment:8 by SupSuper, 5 months ago

Owner: set to SupSuper
Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.