Closed
Bug 610229
Opened 14 years ago
Closed 10 years ago
Crash [@ nsExternalAppHandler::OnDataAvailable]
Categories
(Core :: DOM: Navigation, defect)
Tracking
()
RESOLVED
INCOMPLETE
People
(Reporter: jdm, Unassigned)
Details
(Keywords: crash)
Crash Data
This one's really strange. The stack's cut off, but we're in the middle of XMLHttpRequest::Send, which spins the event loop and triggers ExternalHelperAppParent::RecvOnDataAvailable. This ends up failing the download, which triggers a prompt. We then spin the event loop and hit RecvOnDataAvailable again, which fails the download again, which then ends up triggering XMLHttpRequest::Send, which spins the event loop so we hit RecvOnDataAvailable...
Since the failing line is |Cancel(rv)|, I'm not really sure what's going on here. I'm really confused about the presence of XMLHttpRequest in this stack.
0 libxul.so nsExternalAppHandler::OnDataAvailable uriloader/exthandler/nsExternalHelperAppService.cpp:1983
1 libxul.so mozilla::dom::ExternalHelperAppParent::RecvOnDataAvailable uriloader/exthandler/ExternalHelperAppParent.cpp:110
2 libxul.so mozilla::dom::PExternalHelperAppParent::OnMessageReceived PExternalHelperAppParent.cpp:167
3 libxul.so mozilla::dom::PContentParent::OnMessageReceived PContentParent.cpp:463
4 libxul.so mozilla::ipc::AsyncChannel::OnDispatchMessage ipc/glue/AsyncChannel.cpp:262
5 libxul.so mozilla::ipc::RPCChannel::OnMaybeDequeueOne ipc/glue/RPCChannel.cpp:438
6 libxul.so RunnableMethod<mozilla::ipc::RPCChannel,bool ,Tuple0>::Run ipc/chromium/src/base/tuple.h:383
7 libxul.so mozilla::ipc::RPCChannel::DequeueTask::Run RPCChannel.h:449
8 libxul.so MessageLoop::RunTask ipc/chromium/src/base/message_loop.cc:343
9 libxul.so MessageLoop::DeferOrRunPendingTask ipc/chromium/src/base/message_loop.cc:351
10 libxul.so MessageLoop::DoWork ipc/chromium/src/base/message_loop.cc:451
11 libxul.so mozilla::ipc::DoWorkRunnable::Run ipc/glue/MessagePump.cpp:70
12 libxul.so nsThread::ProcessNextEvent xpcom/threads/nsThread.cpp:609
13 libxul.so NS_InvokeByIndex_P xpcom/reflect/xptcall/src/md/unix/xptcinvoke_arm.cpp:198
14 libxul.so XPCWrappedNative::CallMethod js/src/xpconnect/src/xpcwrappednative.cpp:3054
15 libxul.so XPC_WN_CallMethod js/src/xpconnect/src/xpcwrappednativejsops.cpp:1589
16 libxul.so js::Interpret js/src/jscntxtinlines.h:684
17 libxul.so js::Invoke js/src/jsinterp.cpp:665
18 libxul.so js_fun_apply js/src/jsfun.cpp:2341
19 libxul.so js::Interpret js/src/jscntxtinlines.h:684
20 libxul.so js::Invoke js/src/jsinterp.cpp:665
21 libxul.so js::ExternalInvoke js/src/jsinterp.cpp:881
22 libxul.so JS_CallFunctionValue js/src/jsinterp.h:954
23 libxul.so nsXPCWrappedJSClass::CallMethod js/src/xpconnect/src/xpcwrappedjsclass.cpp:1694
24 libxul.so nsXPCWrappedJS::CallMethod js/src/xpconnect/src/xpcwrappedjs.cpp:577
25 libxul.so PrepareAndDispatch xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp:132
26 libxul.so libxul.so@0xfba4f3
27 libxul.so nsDownload::FailDownload toolkit/components/downloads/src/nsDownloadManager.cpp:3093
28 @0x473a5b7f
29 libxul.so nsDownload::OnStatusChange toolkit/components/downloads/src/nsDownloadManager.cpp:2459
30 libxul.so nsDownloadProxy::OnStatusChange toolkit/components/downloads/src/nsDownloadProxy.h:122
31 libxul.so nsExternalAppHandler::SendStatusChange uriloader/exthandler/nsExternalHelperAppService.cpp:1892
32 libxul.so nsExternalAppHandler::OnDataAvailable uriloader/exthandler/nsExternalHelperAppService.cpp:1980
33 libxul.so mozilla::dom::ExternalHelperAppParent::RecvOnDataAvailable uriloader/exthandler/ExternalHelperAppParent.cpp:110
34 libxul.so mozilla::dom::PExternalHelperAppParent::OnMessageReceived PExternalHelperAppParent.cpp:167
35 libxul.so mozilla::dom::PContentParent::OnMessageReceived PContentParent.cpp:463
36 libxul.so mozilla::ipc::AsyncChannel::OnDispatchMessage ipc/glue/AsyncChannel.cpp:262
37 libxul.so mozilla::ipc::RPCChannel::OnMaybeDequeueOne ipc/glue/RPCChannel.cpp:438
38 libxul.so RunnableMethod<mozilla::ipc::RPCChannel,bool ,Tuple0>::Run ipc/chromium/src/base/tuple.h:383
39 libxul.so mozilla::ipc::RPCChannel::DequeueTask::Run RPCChannel.h:449
40 libxul.so MessageLoop::RunTask ipc/chromium/src/base/message_loop.cc:343
41 libxul.so MessageLoop::DeferOrRunPendingTask ipc/chromium/src/base/message_loop.cc:351
42 libxul.so MessageLoop::DoWork ipc/chromium/src/base/message_loop.cc:451
43 libxul.so mozilla::ipc::DoWorkRunnable::Run ipc/glue/MessagePump.cpp:70
44 libxul.so nsThread::ProcessNextEvent xpcom/threads/nsThread.cpp:609
45 libxul.so NS_ProcessNextEvent_P nsThreadUtils.cpp:250
46 libxul.so nsXMLHttpRequest::Send content/base/src/nsXMLHttpRequest.cpp:2685
47 libxul.so nsIXMLHttpRequest_Send dom_quickstubs.cpp:26849
48 libxul.so js::Interpret js/src/jscntxtinlines.h:684
49 libxul.so js::Invoke js/src/jsinterp.cpp:665
50 libxul.so js_fun_apply js/src/jsfun.cpp:2341
51 libxul.so js::Interpret js/src/jscntxtinlines.h:684
52 libxul.so js::Invoke js/src/jsinterp.cpp:665
53 libxul.so js::ExternalInvoke js/src/jsinterp.cpp:881
54 libxul.so JS_CallFunctionValue js/src/jsinterp.h:954
55 libxul.so nsXPCWrappedJSClass::CallMethod js/src/xpconnect/src/xpcwrappedjsclass.cpp:1694
56 libxul.so nsXPCWrappedJS::CallMethod js/src/xpconnect/src/xpcwrappedjs.cpp:577
57 libxul.so PrepareAndDispatch xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp:132
58 libxul.so libxul.so@0xfba4f3
59 libxul.so nsDownload::FailDownload toolkit/components/downloads/src/nsDownloadManager.cpp:3093
60 @0x473a5b7f
61 libxul.so nsDownload::OnStatusChange toolkit/components/downloads/src/nsDownloadManager.cpp:2459
62 libxul.so nsDownloadProxy::OnStatusChange toolkit/components/downloads/src/nsDownloadProxy.h:122
63 libxul.so nsExternalAppHandler::SendStatusChange uriloader/exthandler/nsExternalHelperAppService.cpp:1892
64 libxul.so nsExternalAppHandler::OnDataAvailable uriloader/exthandler/nsExternalHelperAppService.cpp:1980
65 libxul.so mozilla::dom::ExternalHelperAppParent::RecvOnDataAvailable uriloader/exthandler/ExternalHelperAppParent.cpp:110
66 libxul.so mozilla::dom::PExternalHelperAppParent::OnMessageReceived PExternalHelperAppParent.cpp:167
67 libxul.so mozilla::dom::PContentParent::OnMessageReceived PContentParent.cpp:463
68 libxul.so mozilla::ipc::AsyncChannel::OnDispatchMessage ipc/glue/AsyncChannel.cpp:262
69 libxul.so mozilla::ipc::RPCChannel::OnMaybeDequeueOne ipc/glue/RPCChannel.cpp:438
70 libxul.so RunnableMethod<mozilla::ipc::RPCChannel,bool ,Tuple0>::Run ipc/chromium/src/base/tuple.h:383
71 libxul.so mozilla::ipc::RPCChannel::DequeueTask::Run RPCChannel.h:449
72 libxul.so MessageLoop::RunTask ipc/chromium/src/base/message_loop.cc:343
73 libxul.so MessageLoop::DeferOrRunPendingTask ipc/chromium/src/base/message_loop.cc:351
74 libxul.so MessageLoop::DoWork ipc/chromium/src/base/message_loop.cc:451
75 libxul.so mozilla::ipc::DoWorkRunnable::Run ipc/glue/MessagePump.cpp:70
76 libxul.so nsThread::ProcessNextEvent xpcom/threads/nsThread.cpp:609
77 libxul.so NS_InvokeByIndex_P xpcom/reflect/xptcall/src/md/unix/xptcinvoke_arm.cpp:198
78 libxul.so XPCWrappedNative::CallMethod js/src/xpconnect/src/xpcwrappednative.cpp:3054
79 libxul.so XPC_WN_CallMethod js/src/xpconnect/src/xpcwrappednativejsops.cpp:1589
80 libxul.so js::Interpret js/src/jscntxtinlines.h:684
81 libxul.so js::Invoke js/src/jsinterp.cpp:665
82 libxul.so js_fun_apply js/src/jsfun.cpp:2341
83 libxul.so js::Interpret js/src/jscntxtinlines.h:684
84 libxul.so js::Invoke js/src/jsinterp.cpp:665
85 libxul.so js::ExternalInvoke js/src/jsinterp.cpp:881
86 libxul.so JS_CallFunctionValue js/src/jsinterp.h:954
87 libxul.so nsXPCWrappedJSClass::CallMethod js/src/xpconnect/src/xpcwrappedjsclass.cpp:1694
88 libxul.so nsXPCWrappedJS::CallMethod js/src/xpconnect/src/xpcwrappedjs.cpp:577
89 libxul.so PrepareAndDispatch xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp:132
90 libxul.so libxul.so@0xfba4f3
91 libxul.so nsDownload::FailDownload toolkit/components/downloads/src/nsDownloadManager.cpp:3093
92 @0x473a5b7f
93 libxul.so nsDownload::OnStatusChange toolkit/components/downloads/src/nsDownloadManager.cpp:2459
94 libxul.so nsDownloadProxy::OnStatusChange toolkit/components/downloads/src/nsDownloadProxy.h:122
95 libxul.so nsExternalAppHandler::SendStatusChange uriloader/exthandler/nsExternalHelperAppService.cpp:1892
96 libxul.so nsExternalAppHandler::OnDataAvailable uriloader/exthandler/nsExternalHelperAppService.cpp:1980
97 libxul.so mozilla::dom::ExternalHelperAppParent::RecvOnDataAvailable uriloader/exthandler/ExternalHelperAppParent.cpp:110
98 libxul.so mozilla::dom::PExternalHelperAppParent::OnMessageReceived PExternalHelperAppParent.cpp:167
99 libxul.so mozilla::dom::PContentParent::OnMessageReceived PContentParent.cpp:463
100 libxul.so mozilla::ipc::AsyncChannel::OnDispatchMessage ipc/glue/AsyncChannel.cpp:262
101 libxul.so mozilla::ipc::RPCChannel::OnMaybeDequeueOne ipc/glue/RPCChannel.cpp:438
102 libxul.so RunnableMethod<mozilla::ipc::RPCChannel,bool ,Tuple0>::Run ipc/chromium/src/base/tuple.h:383
103 libxul.so mozilla::ipc::RPCChannel::DequeueTask::Run RPCChannel.h:449
104 libxul.so MessageLoop::RunTask ipc/chromium/src/base/message_loop.cc:343
105 libxul.so MessageLoop::DeferOrRunPendingTask ipc/chromium/src/base/message_loop.cc:351
106 libxul.so MessageLoop::DoWork ipc/chromium/src/base/message_loop.cc:451
107 libxul.so mozilla::ipc::DoWorkRunnable::Run ipc/glue/MessagePump.cpp:70
108 libxul.so nsThread::ProcessNextEvent xpcom/threads/nsThread.cpp:609
109 libxul.so NS_ProcessNextEvent_P nsThreadUtils.cpp:250
110 libxul.so nsXMLHttpRequest::Send content/base/src/nsXMLHttpRequest.cpp:2685
111 libxul.so nsIXMLHttpRequest_Send dom_quickstubs.cpp:26849
112 libxul.so js::Interpret js/src/jscntxtinlines.h:684
Reporter | ||
Comment 1•14 years ago
|
||
Processor Notes This dump is too long and has triggered the automatic truncation routine
it's probably stack overflow.
Comment 3•14 years ago
|
||
Yeah, this is looking like infinite recursion to me....
Assignee | ||
Updated•14 years ago
|
Crash Signature: [@ nsExternalAppHandler::OnDataAvailable]
Comment 4•10 years ago
|
||
(In reply to Boris Zbarsky [:bz] from comment #3)
> Yeah, this is looking like infinite recursion to me....
Worth keeping?
In various chunks totaling 6 weeks I found only one crash with nsExternalAppHandler::OnDataAvailable in the signature
bp-cf67e88c-a57e-4af7-8fc6-29ce02150130
Flags: needinfo?(josh)
Reporter | ||
Comment 5•10 years ago
|
||
Nope.
Status: NEW → RESOLVED
Closed: 10 years ago
Flags: needinfo?(josh)
Resolution: --- → INCOMPLETE
You need to log in
before you can comment on or make changes to this bug.
Description
•