crash [@ nsBuiltinDecoderStateMachine::Run()][@ nsBuiltinDecoder::GetPreloadAction ]

VERIFIED FIXED

Status

()

Core
Audio/Video
--
critical
VERIFIED FIXED
7 years ago
7 years ago

People

(Reporter: Stuart Parmenter, Unassigned)

Tracking

({crash, regression})

Trunk
crash, regression
Points:
---

Firefox Tracking Flags

(blocking2.0 final+)

Details

(Whiteboard: [hardblocker], crash signature)

(Reporter)

Description

7 years ago
This bug was filed from the Socorro interface and is 
report bp-6ab9b81c-6f1a-4891-be44-a9dfd2110216 .
============================================================= 

0 	xul.dll 	nsBuiltinDecoderStateMachine::Run 	content/media/nsBuiltinDecoderStateMachine.cpp:991
1 	xul.dll 	nsThread::ProcessNextEvent 	xpcom/threads/nsThread.cpp:633
2 	xul.dll 	nsThreadStartupEvent::Run 	xpcom/threads/nsThread.cpp:207
3 	nspr4.dll 	_PR_NativeRunThread 	nsprpub/pr/src/threads/combined/pruthr.c:426
4 	nspr4.dll 	pr_root 	nsprpub/pr/src/md/windows/w95thred.c:122
5 	mozcrt19.dll 	_callthreadstartex 	obj-firefox/memory/jemalloc/crtsrc/threadex.c:348
6 	mozcrt19.dll 	__dllonexit 	obj-firefox/memory/jemalloc/crtsrc/onexit.c:276
7 	mozcrt19.dll 	_threadstartex 	obj-firefox/memory/jemalloc/crtsrc/threadex.c:326
8 	ntdll.dll 	ntdll.dll@0x39f01 


I've hit this twice now in today's build when browsing random sites -- not sure steps to reproduce yet.
(Reporter)

Updated

7 years ago
Component: General → Video/Audio
Product: Firefox → Core
QA Contact: general → video.audio
(Reporter)

Updated

7 years ago
blocking2.0: --- → ?
+            nsCOMPtr<nsIRunnable> event = new ShutdownThreadEvent(mDecoder->mStateMachineThread);
+            NS_DispatchToMainThread(event, NS_DISPATCH_NORMAL);
+            mDecoder->mStateMachineThread = nsnull;

This part of the patch in bug 631058 interacts badly with nsBuiltinDecoder::Stop():

  if (mStateMachineThread)
    mStateMachineThread->Shutdown();

This is the mechanism used to ensure that the state machine thread is no longer running before the decoder is destroyed. However, by setting mStateMachineThread to nsnull before the ShutdownThreadEvent executes, the check in Stop() will get skipped, even though the state machine thread is still potentially active.

Comment 2

7 years ago
It is #4 top crasher in today's build.
Blocks: 631058

Updated

7 years ago
Keywords: regression

Updated

7 years ago
OS: Windows NT → All
Hardware: x86 → All
Summary: crash [@ nsBuiltinDecoderStateMachine::Run()] → crash [@ nsBuiltinDecoderStateMachine::Run()][@ nsBuiltinDecoder::GetPreloadAction ]
Version: unspecified → Trunk
Backed out.
Status: NEW → RESOLVED
Last Resolved: 7 years ago
Resolution: --- → FIXED
Would have been a hardblocker, but fixed anyhow.
blocking2.0: ? → final+
Whiteboard: [hardblocker]
There have been no recent crash reports with Firefox 4.0b12pre > 20110216.
Status: RESOLVED → VERIFIED
(Assignee)

Updated

7 years ago
Crash Signature: [@ nsBuiltinDecoderStateMachine::Run()] [@ nsBuiltinDecoder::GetPreloadAction ]
You need to log in before you can comment on or make changes to this bug.