Opened 3 years ago

Closed 3 years 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
Version: 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 3 years ago.
4d7e_appcompat.txt (7.6 KB ) - added by jeditobe 3 years ago.
Capture4.PNG (46.6 KB ) - added by jeditobe 3 years ago.
Capture5.PNG (198.5 KB ) - added by jeditobe 3 years ago.
Capture6.PNG (100.8 KB ) - added by jeditobe 3 years ago.

Download all attachments as: .zip

Change History (13)

comment:1 by jeditobe, 3 years ago

Description: modified (diff)

by jeditobe, 3 years ago

Attachment: screenshot-1.png added

comment:2 by jeditobe, 3 years ago

Description: modified (diff)

comment:3 by lotharsm, 3 years 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 3 years ago by lotharsm (previous) (diff)

comment:4 by lotharsm, 3 years 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, 3 years ago

Attachment: 4d7e_appcompat.txt added

by jeditobe, 3 years ago

Attachment: Capture4.PNG added

comment:5 by lotharsm, 3 years 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, 3 years ago

Attachment: Capture5.PNG added

comment:6 by jeditobe, 3 years ago


it works! looks like this bug is fixed

by jeditobe, 3 years ago

Attachment: Capture6.PNG added

comment:7 by jeditobe, 3 years ago

ReactOS issue is fixed as well \0/


comment:8 by SupSuper, 3 years ago

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