Closed
Bug 548065
Opened 16 years ago
Closed 16 years ago
Segfault when sending async message to remote process that has not initialized yet
Categories
(Core :: IPC, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: jdm, Assigned: smaug)
References
Details
Attachments
(2 files, 1 obsolete file)
|
2.62 KB,
patch
|
Details | Diff | Splinter Review | |
|
2.75 KB,
patch
|
jst
:
review+
|
Details | Diff | Splinter Review |
#1 0x078f3d56 in nanosleep () from /lib/libc.so.6
#2 0x078f3b71 in sleep () from /lib/libc.so.6
#3 0x00d587f5 in ah_crap_handler (signum=11) at /home/t_mattjo/src/firefox/electrolysis/toolkit/xre/nsSigHandlers.cpp:164
#4 0x00d5cf92 in nsProfileLock::FatalSignalHandler (signo=11, info=0xbfb40ebc, context=0xbfb40f3c) at nsProfileLock.cpp:221
#5 <signal handler called>
#6 0x01396482 in nsFrameLoader::GetChildProcess (this=0x0) at /home/t_mattjo/src/firefox/electrolysis/content/base/src/nsFrameLoader.cpp:1519
#7 0x01396a10 in SendAsyncMessageToChild (aCallbackData=0x0, aMessage=..., aJSON=...) at /home/t_mattjo/src/firefox/electrolysis/content/base/src/nsFrameLoader.cpp:1626
#8 0x01407da1 in nsFrameMessageManager::SendAsyncMessageInternal (this=0xb3630400, aMessage=..., aJSON=...)
at /home/t_mattjo/src/firefox/electrolysis/content/base/src/nsFrameMessageManager.cpp:239
#9 0x01407ed7 in nsFrameMessageManager::SendAsyncMessage (this=0xb3630400) at /home/t_mattjo/src/firefox/electrolysis/content/base/src/nsFrameMessageManager.cpp:255
#10 0x02080721 in NS_InvokeByIndex_P () at /home/t_mattjo/src/firefox/electrolysis/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_gcc_x86_unix.cpp:69
#11 0x00db4582 in XPCWrappedNative::CallMethod (ccx=..., mode=CALL_METHOD) at /home/t_mattjo/src/firefox/electrolysis/js/src/xpconnect/src/xpcwrappednative.cpp:2727
#12 0x00dc1a04 in XPC_WN_CallMethod (cx=0xb337f800, obj=0xb7683ba0, argc=2, argv=0xb339b058, vp=0xbfb41800)
at /home/t_mattjo/src/firefox/electrolysis/js/src/xpconnect/src/xpcwrappednativejsops.cpp:1756
#13 0x001b71d8 in js_Invoke (cx=0xb337f800, argc=2, vp=0xb339b050, flags=2) at /home/t_mattjo/src/firefox/electrolysis/js/src/jsinterp.cpp:1388
#14 0x001a42a8 in js_Interpret (cx=0xb337f800) at /home/t_mattjo/src/firefox/electrolysis/js/src/jsops.cpp:2304
#15 0x001b7cbe in js_Execute (cx=0xb337f800, chain=0xb76695a0, script=0xb333e700, down=0x0, flags=0, result=0xbfb41e74)
at /home/t_mattjo/src/firefox/electrolysis/js/src/jsinterp.cpp:1684
#16 0x0013a501 in JS_ExecuteScript (cx=0xb337f800, obj=0xb76695a0, script=0xb333e700, rval=0xbfb41e74) at /home/t_mattjo/src/firefox/electrolysis/js/src/jsapi.cpp:4972
#17 0x015f537d in nsJSContext::ExecuteScript (this=0xb3598380, aScriptObject=0xb7682a20, aScopeObject=0xb76695a0, aRetValue=0x0, aIsUndefined=0x0)
at /home/t_mattjo/src/firefox/electrolysis/dom/base/nsJSEnvironment.cpp:1910
#18 0x015cfaf3 in nsXULDocument::ExecuteScript (this=0xb234a800, aContext=0xb3598380, aScriptObject=0xb7682a20)
at /home/t_mattjo/src/firefox/electrolysis/content/xul/document/src/nsXULDocument.cpp:3659
#19 0x015cfd56 in nsXULDocument::ExecuteScript (this=0xb234a800, aScript=0xb67886d0) at /home/t_mattjo/src/firefox/electrolysis/content/xul/document/src/nsXULDocument.cpp:3682
#20 0x015cdb24 in nsXULDocument::ResumeWalk (this=0xb234a800) at /home/t_mattjo/src/firefox/electrolysis/content/xul/document/src/nsXULDocument.cpp:3035
#21 0x015c6111 in nsXULDocument::OnPrototypeLoadDone (this=0xb234a800, aResumeWalk=1) at /home/t_mattjo/src/firefox/electrolysis/content/xul/document/src/nsXULDocument.cpp:631
#22 0x015c604a in nsXULDocument::EndLoad (this=0xb234a800) at /home/t_mattjo/src/firefox/electrolysis/content/xul/document/src/nsXULDocument.cpp:614
#23 0x015c006f in XULContentSinkImpl::DidBuildModel (this=0xb678df10, aTerminated=0) at /home/t_mattjo/src/firefox/electrolysis/content/xul/document/src/nsXULContentSink.cpp:278
#24 0x00feb56e in nsParser::DidBuildModel (this=0xb33f3a00, anErrorCode=0) at /home/t_mattjo/src/firefox/electrolysis/parser/htmlparser/src/nsParser.cpp:1609
#25 0x00fed1f7 in nsParser::ResumeParse (this=0xb33f3a00, allowIteration=1, aIsFinalChunk=1, aCanInterrupt=1)
at /home/t_mattjo/src/firefox/electrolysis/parser/htmlparser/src/nsParser.cpp:2388
#26 0x00feed31 in nsParser::OnStopRequest (this=0xb33f3a00, request=0xb33f2140, aContext=0x0, status=0)
at /home/t_mattjo/src/firefox/electrolysis/parser/htmlparser/src/nsParser.cpp:3021
#27 0x01a527c7 in nsDocumentOpenInfo::OnStopRequest (this=0xb33f8fd0, request=0xb33f2140, aCtxt=0x0, aStatus=0)
at /home/t_mattjo/src/firefox/electrolysis/uriloader/base/nsURILoader.cpp:323
#28 0x00fa10b9 in nsJARChannel::OnStopRequest (this=0xb33f2140, req=0xb3683760, ctx=0x0, status=0) at /home/t_mattjo/src/firefox/electrolysis/modules/libjar/nsJARChannel.cpp:881
#29 0x00e62743 in nsInputStreamPump::OnStateStop (this=0xb3683760) at /home/t_mattjo/src/firefox/electrolysis/netwerk/base/src/nsInputStreamPump.cpp:576
#30 0x00e61fdf in nsInputStreamPump::OnInputStreamReady (this=0xb3683760, stream=0xb331d74c) at /home/t_mattjo/src/firefox/electrolysis/netwerk/base/src/nsInputStreamPump.cpp:401
#31 0x0203f38a in nsInputStreamReadyEvent::Run (this=0xb33f9740) at /home/t_mattjo/src/firefox/electrolysis/xpcom/io/nsStreamUtils.cpp:112
#32 0x020678f6 in nsThread::ProcessNextEvent (this=0xb757f7e0, mayWait=0, result=0xbfb4236c) at /home/t_mattjo/src/firefox/electrolysis/xpcom/threads/nsThread.cpp:527
#33 0x02003f41 in NS_ProcessNextEvent_P (thread=0xb757f7e0, mayWait=0) at nsThreadUtils.cpp:250
#34 0x01e99bb8 in mozilla::ipc::MessagePump::Run (this=0xb75cbbb0, aDelegate=0xb7520600) at /home/t_mattjo/src/firefox/electrolysis/ipc/glue/MessagePump.cpp:118
#35 0x01f7a4af in MessageLoop::RunInternal (this=0xb7520600) at /home/t_mattjo/src/firefox/electrolysis/ipc/chromium/src/base/message_loop.cc:211
---Type <return> to continue, or q <return> to quit---
#36 0x01f7a42b in MessageLoop::RunHandler (this=0xb7520600) at /home/t_mattjo/src/firefox/electrolysis/ipc/chromium/src/base/message_loop.cc:194
#37 0x01f7a3af in MessageLoop::Run (this=0xb7520600) at /home/t_mattjo/src/firefox/electrolysis/ipc/chromium/src/base/message_loop.cc:168
#38 0x01d5ff44 in nsBaseAppShell::Run (this=0xb35fef10) at /home/t_mattjo/src/firefox/electrolysis/widget/src/xpwidgets/nsBaseAppShell.cpp:174
#39 0x01b03923 in nsAppStartup::Run (this=0xb757be80) at /home/t_mattjo/src/firefox/electrolysis/toolkit/components/startup/src/nsAppStartup.cpp:183
#40 0x00d4bd55 in XRE_main (argc=5, argv=0xbfb42a94, aAppData=0xb7516380) at /home/t_mattjo/src/firefox/electrolysis/toolkit/xre/nsAppRunner.cpp:3489
#41 0x080497f7 in main (argc=5, argv=0xbfb42a94) at /home/t_mattjo/src/firefox/electrolysis/browser/app/nsBrowserApp.cpp:158
Run the attached testcase the same as bug 547942.
| Reporter | ||
Updated•16 years ago
|
Attachment #428500 -
Attachment is patch: true
Attachment #428500 -
Attachment mime type: application/octet-stream → text/plain
| Assignee | ||
Updated•16 years ago
|
Assignee: nobody → Olli.Pettay
| Assignee | ||
Comment 1•16 years ago
|
||
This is good enough for now. We may want to add api to get error messages if
sending messages fail. Needs to investigate what that api should look like.
Attachment #428508 -
Flags: review?(jst)
| Assignee | ||
Comment 2•16 years ago
|
||
Comment on attachment 428508 [details] [diff] [review]
null check for now
I'll make the methods just throw
Attachment #428508 -
Flags: review?(jst)
| Assignee | ||
Comment 3•16 years ago
|
||
Attachment #428508 -
Attachment is obsolete: true
Attachment #428511 -
Flags: review?(jst)
Updated•16 years ago
|
Attachment #428511 -
Flags: review?(jst) → review+
| Assignee | ||
Comment 4•16 years ago
|
||
| Assignee | ||
Updated•16 years ago
|
Status: NEW → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•