(Hidden by Administrator)
Bug 1399734 Comment 0 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
1. <contact me for the url if you are working on this bug>
2. Click Ok in Alert.
3. Browser Window disappears and browser hangs.
In Bughunter automation using marionette, two crash dumps are created. One is related to breakpad while the other is related to mozilla::detail::ConditionVariableImpl::wait(). You can see both in the attached log. Search for "Crash reason:".
It appears that an exception is thrown in mozilla::dom::ValueToPrimitive<bool,0>() which results in the call to wait which hangs.
Reproducible in Windows and Linux opt builds in Bughunter. Locally, I can reproduce the hang on debug builds on Fedora.
Crash reason: EXCEPTION_BREAKPOINT
Crash address: 0x774c6c74
Process uptime: 21 seconds
Thread 0 (crashed)
0 ntdll.dll + 0x46c74
eip = 0x774c6c74 esp = 0x003fa3e8 ebp = 0x003fa430 ebx = 0x003fa444
esi = 0x00000000 edi = 0x00000000 eax = 0x003fa4c0 ecx = 0x00f44420
edx = 0x00000000 efl = 0x00000247
Found by: given as instruction pointer in context
1 kernel32.dll + 0x33135
eip = 0x76b83135 esp = 0x003fa438 ebp = 0x003fa464
Found by: previous frame's frame pointer
2 mozglue.dll!mozilla::detail::ConditionVariableImpl::wait(mozilla::detail::MutexImpl &) [ConditionVariable_windows.cpp:c15e2f280729 : 58 + 0xa]
eip = 0x6db5837f esp = 0x003fa46c ebp = 0x003fa47c
Found by: previous frame's frame pointer
3 xul.dll!mozilla::CondVar::Wait(unsigned int) [CondVar.h:c15e2f280729 : 68 + 0xb]
eip = 0x5c5b9bbc esp = 0x003fa484 ebp = 0x003fa494
Found by: call frame info
4 xul.dll!mozilla::ThreadEventQueue<mozilla::PrioritizedEventQueue<mozilla::LabeledEventQueue> >::GetEvent(bool,mozilla::EventPriority *) [ThreadEventQueue.cpp:c15e2f280729 : 138 + 0xa]
eip = 0x5c5be347 esp = 0x003fa49c ebp = 0x003fa4b4
Found by: call frame info
5 xul.dll!nsThread::ProcessNextEvent(bool,bool *) [nsThread.cpp:c15e2f280729 : 967 + 0x1e]
eip = 0x5c5c02f2 esp = 0x003fa4bc ebp = 0x003faa38
Found by: call frame info
6 xul.dll!js::InternalCallOrConstruct(JSContext *,JS::CallArgs const &,js::MaybeConstruct) [Interpreter.cpp:c15e2f280729 : 513 + 0xa]
eip = 0x5e5dcee0 esp = 0x003fa52c ebp = 0x003faa80
Found by: stack scanning
7 xul.dll!js::Call(JSContext *,JS::Handle<JS::Value>,JS::Handle<JS::Value>,js::AnyInvokeArgs const &,JS::MutableHandle<JS::Value>) [Interpreter.cpp:c15e2f280729 : 559 + 0x5]
eip = 0x5e5d9b60 esp = 0x003fa5b0 ebp = 0x003faa98
Found by: call frame info with scanning
8 xul.dll!JS_CallFunctionValue(JSContext *,JS::Handle<JSObject *>,JS::Handle<JS::Value>,JS::HandleValueArray const &,JS::MutableHandle<JS::Value>) [jsapi.cpp:c15e2f280729 : 2907 + 0x12]
eip = 0x5e2f0d55 esp = 0x003fa5e8 ebp = 0x003fa660
Found by: call frame info with scanning
9 xul.dll!mozilla::dom::AutoJSAPI::ReportException() [ScriptSettings.cpp:c15e2f280729 : 570 + 0x8]
eip = 0x5d59666e esp = 0x003fa5fc ebp = 0x003fa660
Found by: stack scanning
10 xul.dll!mozilla::dom::AutoJSAPI::ReportException() [ScriptSettings.cpp:c15e2f280729 : 635 + 0x3e]
eip = 0x5d596959 esp = 0x003fa608 ebp = 0x003fa660
Found by: stack scanning
11 xul.dll!mozilla::dom::ValueToPrimitive<bool,0>(JSContext *,JS::Handle<JS::Value>,bool *) [PrimitiveConversions.h:c15e2f280729 : 348 + 0xf]
eip = 0x5c9fc8d7 esp = 0x003fa65c ebp = 0x003fa620
Found by: stack scanning