Closed Bug 991824 Opened 10 years ago Closed 8 years ago

NS_DebugBreak should not try to annotate the crash report from off the main thread in child processes ("ASSERTION: Cannot call AnnotateCrashReport in child processes from non-main thread")

Categories

(Core :: XPCOM, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: emorley, Unassigned)

References

Details

Broken out from bug 990355.

(In reply to Ted Mielczarek [:ted.mielczarek] from bug 990355 comment #4)
> We should probably fix NS_DebugBreak to not try to annotate the crash report
> from off the main thread in child processes since that doesn't work:
> http://mxr.mozilla.org/mozilla-central/source/xpcom/base/nsDebugImpl.cpp#363

In reference to:
{
16:14:09     INFO -  2244 INFO TEST-START | chrome://mochitests/content/chrome/dom/workers/test/test_workersDisabled.xul
16:14:10     INFO -  ++DOMWINDOW == 65 (282478D8) [pid = 2836] [serial = 2197] [outer = 17202D38]
16:14:10     INFO -  Hit MOZ_CRASH() at c:\builds\moz2_slave\fx-team-w32-d-0000000000000000\build\xpcom\base\CycleCollectedJSRuntime.cpp:463
16:14:10     INFO -  [2460] ###!!! ABORT: Aborting on channel error.: file c:\builds\moz2_slave\fx-team-w32-d-0000000000000000\build\ipc\glue\MessageChannel.cpp, line 1522
16:14:10     INFO -  [2460] ###!!! ASSERTION: Cannot call AnnotateCrashReport in child processes from non-main thread.: 'Error', file c:\builds\moz2_slave\fx-team-w32-d-0000000000000000\build\toolkit\crashreporter\nsExceptionHandler.cpp, line 1691
16:14:10     INFO -  NS_DebugBreak [xpcom/base/nsDebugImpl.cpp:367]
16:14:10     INFO -  mozilla::ipc::MessageChannel::OnChannelErrorFromLink() [ipc/glue/MessageChannel.cpp:1522]
16:14:10     INFO -  base::MessagePumpForIO::WaitForIOCompletion(unsigned long,base::MessagePumpForIO::IOHandler *) [ipc/chromium/src/base/message_pump_win.cc:524]
16:14:10     INFO -  base::MessagePumpForIO::WaitForWork() [ipc/chromium/src/base/message_pump_win.cc:501]
16:14:10     INFO -  base::MessagePumpForIO::DoRunLoop() [ipc/chromium/src/base/message_pump_win.cc:463]
16:14:10     INFO -  base::MessagePumpWin::RunWithDispatcher(base::MessagePump::Delegate *,base::MessagePumpWin::Dispatcher *) [ipc/chromium/src/base/message_pump_win.cc:55]
16:14:10     INFO -  base::MessagePumpWin::Run(base::MessagePump::Delegate *) [ipc/chromium/src/base/message_pump_win.h:78]
16:14:10     INFO -  MessageLoop::RunInternal() [ipc/chromium/src/base/message_loop.cc:226]
16:14:10     INFO -  MessageLoop::RunHandler() [ipc/chromium/src/base/message_loop.cc:220]
16:14:10     INFO -  MessageLoop::Run() [ipc/chromium/src/base/message_loop.cc:194]
16:14:10     INFO -  base::Thread::ThreadMain() [ipc/chromium/src/base/thread.cc:165]
16:14:10     INFO -  `anonymous namespace'::ThreadFunc(void *) [ipc/chromium/src/base/platform_thread_win.cc:27]
16:14:10     INFO -  kernel32 + 0x53c45
16:14:10     INFO -  ntdll + 0x637f5
16:14:10     INFO -  ntdll + 0x637c8
}
Has anybody looked at removing the limitation for the AnnotateCrashReporter instead?
Flags: needinfo?(milan)
This is fixed, right?  As in, we're not making those calls anymore from  NS_DebugBreak
Status: NEW → RESOLVED
Closed: 8 years ago
Flags: needinfo?(milan)
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.