Skip to content

Race condition in MilesAudioManager::findPlayingAudioFrom #2715

@xezon

Description

@xezon

MSS Timer thread:

 	generalszh.exe!std::_List_iterator<std::_List_val<std::_List_simple_types<PlayingAudio *>>>::operator++() Line 247	C++
>	generalszh.exe!MilesAudioManager::findPlayingAudioFrom(unsigned int audioCompleted, unsigned int flags) Line 1583	C++
 	generalszh.exe!MilesAudioManager::notifyOfAudioCompletion(unsigned int audioCompleted, unsigned int flags) Line 1516	C++
 	generalszh.exe!setSampleCompleted(_SAMPLE * sampleCompleted) Line 3036	C++
 	mss32.dll!21116124()	Unknown
 	[Frames below may be incorrect and/or missing, no symbols loaded for mss32.dll]	
 	mss32.dll!2111146c()	Unknown
 	mss32.dll!211113ad()	Unknown
 	mss32.dll!2110152c()	Unknown
 	mss32.dll!2110161d()	Unknown
 	kernel32.dll!75035d49()	Unknown
 	ntdll.dll!7762d83b()	Unknown
 	ntdll.dll!7762d7c1()	Unknown

Main Thread

 	ntdll.dll!776391fc()	Unknown
 	[Frames below may be incorrect and/or missing, no symbols loaded for ntdll.dll]	
 	KernelBase.dll!76b18088()	Unknown
 	KernelBase.dll!76b17ff2()	Unknown
 	mss32.dll!2110f4ee()	Unknown
>	generalszh.exe!MilesAudioManager::update() Line 483	C++
 	generalszh.exe!SubsystemInterface::UPDATE() Line 73	C++
 	generalszh.exe!GameEngine::update() Line 906	C++
 	generalszh.exe!Win32GameEngine::update() Line 91	C++
 	generalszh.exe!GameEngine::execute() Line 985	C++
 	generalszh.exe!GameMain() Line 55	C++
 	generalszh.exe!WinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, char * lpCmdLine, int nCmdShow) Line 929	C++
 	generalszh.exe!invoke_main() Line 107	C++
 	generalszh.exe!__scrt_common_main_seh() Line 288	C++
 	generalszh.exe!__scrt_common_main() Line 331	C++
 	generalszh.exe!WinMainCRTStartup(void * __formal) Line 17	C++
 	kernel32.dll!75035d49()	Unknown
 	ntdll.dll!7762d83b()	Unknown
 	ntdll.dll!7762d7c1()	Unknown
Image

Class member access in MilesAudioManager::notifyOfAudioCompletion in not thread safe.

Metadata

Metadata

Assignees

Labels

AudioIs audio relatedCrashThis is a crash, very badMajorSeverity: Minor < Major < Critical < BlockerZHRelates to Zero Hour

Type

No fields configured for Bug.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions