Closed Bug 930836 Opened 11 years ago Closed 11 years ago

Compartment mismatch when starting b2g-desktop and packaged apps on desktop

Categories

(Core Graveyard :: DOM: Apps, defect)

x86
macOS
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
mozilla27

People

(Reporter: gwagner, Assigned: gwagner)

References

Details

Attachments

(2 files, 1 obsolete file)

b2g-inbound tip with b2g-desktop debug build and OOP enabled on mac and new profile:

Hit MOZ_CRASH() at /Users/Gregor/moz/b2g-inbound/js/src/jscntxtinlines.h:40

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_INVALID_ADDRESS at address: 0x0000000000000000
js::CompartmentChecker::fail (c1=0x10dcf9800, c2=0x10e662000) at jscntxtinlines.h:40
40	        MOZ_CRASH();
(gdb) bt
#0  js::CompartmentChecker::fail (c1=0x10dcf9800, c2=0x10e662000) at jscntxtinlines.h:40
#1  0x000000010589c6d8 in js::CompartmentChecker::check (this=0x7fff5fbf0d18, c=0x10e662000) at jscntxtinlines.h:61
#2  0x000000010589c63e in js::CompartmentChecker::check (this=0x7fff5fbf0d18, obj=0x118cf8640) at jscntxtinlines.h:72
#3  0x00000001055ec890 in js::CompartmentChecker::check<JSObject*> (this=0x7fff5fbf0d18, handle={<js::HandleBase<JSObject *>> = {<No data fields>}, ptr = 0x7fff5fbf0e00}) at jscntxtinlines.h:77
#4  0x00000001055e79ee in js::assertSameCompartment<JS::Handle<JSObject*> > (cx=0x100674fc0, t1=@0x7fff5fbf0d50) at jscntxtinlines.h:147
#5  0x00000001055e2743 in JS_ObjectIsDate (cx=0x100674fc0, obj={<js::HandleBase<JSObject *>> = {<No data fields>}, ptr = 0x7fff5fbf0e00}) at /Users/Gregor/moz/b2g-inbound/js/src/jsapi.cpp:5717
#6  0x0000000102966415 in mozilla::dom::IsNotDateOrRegExp (cx=0x100674fc0, obj={<js::HandleBase<JSObject *>> = {<No data fields>}, ptr = 0x7fff5fbf0e00}) at BindingUtils.h:223
#7  0x0000000103afd1f6 in mozilla::dom::IsObjectValueConvertibleToDictionary (cx=0x100674fc0, objVal={<js::HandleBase<JS::Value>> = {<js::ValueOperations<JS::Handle<JS::Value> >> = {<No data fields>}, <No data fields>}, ptr = 0x7fff5fbf12a0}) at BindingUtils.h:237
#8  0x0000000103aec1cc in mozilla::dom::IsConvertibleToDictionary (cx=0x100674fc0, val={<js::HandleBase<JS::Value>> = {<js::ValueOperations<JS::Handle<JS::Value> >> = {<No data fields>}, <No data fields>}, ptr = 0x7fff5fbf12a0}) at BindingUtils.h:244
#9  0x0000000103acf9f3 in mozilla::dom::AppInfo::Init (this=0x7fff5fbf12b8, cx=0x100674fc0, val={<js::HandleBase<JS::Value>> = {<js::ValueOperations<JS::Handle<JS::Value> >> = {<No data fields>}, <No data fields>}, ptr = 0x7fff5fbf12a0}, sourceDescription=0x105dbd3dc "Value") at AppInfoBinding.cpp:50
#10 0x000000010190c9f9 in AppProtocolHandler::NewChannel (this=0x1190ffe20, aUri=0x11a1d0600, aResult=0x7fff5fbf1640) at /Users/Gregor/moz/b2g-inbound/netwerk/protocol/app/AppProtocolHandler.cpp:377
#11 0x000000010179d43c in nsIOService::NewChannelFromURIWithProxyFlags (this=0x10d911680, aURI=0x11a1d0600, aProxyURI=0x0, aProxyFlags=0, result=0x7fff5fbf1640) at /Users/Gregor/moz/b2g-inbound/netwerk/base/src/nsIOService.cpp:593
#12 0x000000010179d167 in nsIOService::NewChannelFromURI (this=0x10d911680, aURI=0x11a1d0600, result=0x7fff5fbf1640) at /Users/Gregor/moz/b2g-inbound/netwerk/base/src/nsIOService.cpp:562
#13 0x0000000101793410 in NS_NewChannel (result=0x7fff5fbf1c60, uri=0x11a1d0600, ioService=0x10d911680, loadGroup=0x0, callbacks=0x1125c0030, loadFlags=0, channelPolicy=0x0) at nsNetUtil.h:203
#14 0x00000001045e6862 in nsDocShell::DoURILoad (this=0x1125c0000, aURI=0x11a1d0600, aReferrerURI=0x0, aSendReferrer=true, aOwner=0x0, aTypeHint=0x0, aFileName=@0x107920580, aPostData=0x0, aHeadersData=0x0, aFirstParty=false, aDocShell=0x0, aRequest=0x7fff5fbf23a0, aIsNewWindowTarget=false, aBypassClassifier=false, aForceAllowCookies=false, aSrcdoc=@0x7fff5fbf23a8) at /Users/Gregor/moz/b2g-inbound/docshell/base/nsDocShell.cpp:9555
#15 0x00000001045e53b6 in nsDocShell::InternalLoad (this=0x1125c0000, aURI=0x11a1d0600, aReferrer=0x0, aOwner=0x0, aFlags=1, aWindowTarget=0x1190fe7b8, aTypeHint=0x0, aFileName=@0x107920580, aPostData=0x0, aHeadersData=0x0, aLoadType=1, aSHEntry=0x0, aFirstParty=false, aSrcdoc=@0x7fff5fbf2fa0, aDocShell=0x0, aRequest=0x0) at /Users/Gregor/moz/b2g-inbound/docshell/base/nsDocShell.cpp:9415
#16 0x00000001045bbd7f in nsDocShell::LoadURI (this=0x1125c0000, aURI=0x11a1d0600, aLoadInfo=0x119036710, aLoadFlags=0, aFirstParty=false) at /Users/Gregor/moz/b2g-inbound/docshell/base/nsDocShell.cpp:1512
#17 0x00000001045bbf7e in non-virtual thunk to nsDocShell::LoadURI(nsIURI*, nsIDocShellLoadInfo*, unsigned int, bool) (this=0x1125c0120, aURI=0x11a1d0600, aLoadInfo=0x119036710, aLoadFlags=0, aFirstParty=false) at /Users/Gregor/moz/b2g-inbound/docshell/base/nsDocShell.cpp:1519
#18 0x00000001022a5780 in nsFrameLoader::ReallyStartLoadingInternal (this=0x10e6d12e0) at /Users/Gregor/moz/b2g-inbound/content/base/src/nsFrameLoader.cpp:508
#19 0x00000001022a4e69 in nsFrameLoader::ReallyStartLoading (this=0x10e6d12e0) at /Users/Gregor/moz/b2g-inbound/content/base/src/nsFrameLoader.cpp:414
#20 0x000000010222a7a2 in nsDocument::MaybeInitializeFinalizeFrameLoaders (this=0x1125ca800) at /Users/Gregor/moz/b2g-inbound/content/base/src/nsDocument.cpp:6295
#21 0x000000010225b318 in nsRunnableMethodImpl<void (nsDocument::*)(), void, true>::Run (this=0x110f52340) at nsThreadUtils.h:382
#22 0x00000001021ee461 in nsContentUtils::AddScriptRunner (aRunnable=0x110f52340) at /Users/Gregor/moz/b2g-inbound/content/base/src/nsContentUtils.cpp:4802
#23 0x0000000102233a52 in nsDocument::InitializeFrameLoader (this=0x1125ca800, aLoader=0x10e6d12e0) at /Users/Gregor/moz/b2g-inbound/content/base/src/nsDocument.cpp:6241
#24 0x00000001022a4bff in nsFrameLoader::LoadURI (this=0x10e6d12e0, aURI=0x11a1d0600) at /Users/Gregor/moz/b2g-inbound/content/base/src/nsFrameLoader.cpp:404
#25 0x00000001022a4907 in nsFrameLoader::LoadFrame (this=0x10e6d12e0) at /Users/Gregor/moz/b2g-inbound/content/base/src/nsFrameLoader.cpp:368
#26 0x00000001025cd4bb in nsGenericHTMLFrameElement::LoadSrc (this=0x1108569d0) at /Users/Gregor/moz/b2g-inbound/content/html/content/src/nsGenericHTMLFrameElement.cpp:175
#27 0x00000001025cd8ac in nsGenericHTMLFrameElement::SetAttr (this=0x1108569d0, aNameSpaceID=0, aName=0x10e14c6a0, aPrefix=0x0, aValue=@0x7fff5fbf39d8, aNotify=true) at /Users/Gregor/moz/b2g-inbound/content/html/content/src/nsGenericHTMLFrameElement.cpp:243
#28 0x000000010251b42c in mozilla::dom::HTMLIFrameElement::SetAttr (this=0x1108569d0, aNameSpaceID=0, aName=0x10e14c6a0, aPrefix=0x0, aValue=@0x7fff5fbf39d8, aNotify=true) at /Users/Gregor/moz/b2g-inbound/content/html/content/src/HTMLIFrameElement.cpp:198
#29 0x0000000101df5047 in nsGenericHTMLElement::SetAttr (this=0x1108569d0, aNameSpaceID=0, aName=0x10e14c6a0, aValue=@0x7fff5fbf39d8, aNotify=true) at nsGenericHTMLElement.h:554
#30 0x0000000101df4fc9 in nsGenericHTMLElement::SetHTMLAttr (this=0x1108569d0, aName=0x10e14c6a0, aValue=@0x7fff5fbf39d8, aError=@0x7fff5fbf39a8) at nsGenericHTMLElement.h:1014
#31 0x0000000103d5e7b5 in mozilla::dom::HTMLIFrameElement::SetSrc (this=0x1108569d0, aSrc=@0x7fff5fbf39d8, aError=@0x7fff5fbf39a8) at HTMLIFrameElement.h:62
#32 0x0000000103d4e5b5 in mozilla::dom::HTMLIFrameElementBinding::set_src (cx=0x100677b80, obj={<js::HandleBase<JSObject *>> = {<No data fields>}, ptr = 0x7fff5fbf3ac0}, self=0x1108569d0, args={<JS::MutableHandle<JS::Value>> = {<js::MutableHandleBase<JS::Value>> = {<js::MutableValueOperations<JS::MutableHandle<JS::Value> >> = {<js::UnbarrieredMutableValueOperations<JS::MutableHandle<JS::Value> >> = {<js::ValueOperations<JS::MutableHandle<JS::Value> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}, ptr = 0x7fff5fbf4160}, <No data fields>}) at HTMLIFrameElementBinding.cpp:44
#33 0x0000000103d4c6be in mozilla::dom::HTMLIFrameElementBinding::genericSetter (cx=0x100677b80, argc=1, vp=0x7fff5fbf4150) at HTMLIFrameElementBinding.cpp:993
#34 0x00000001058769b5 in js::CallJSNative (cx=0x100677b80, native=0x103d4c440 <mozilla::dom::HTMLIFrameElementBinding::genericSetter(JSContext*, unsigned int, JS::Value*)>, args=@0x7fff5fbf4020) at jscntxtinlines.h:220
#35 0x0000000105869873 in js::Invoke (cx=0x100677b80, args={<JS::detail::CallArgsBase<0>> = {<JS::CallReceiver> = {<JS::detail::CallReceiverBase<0>> = {<JS::detail::UsedRvalBase<IncludeUsedRval>> = {usedRval_ = false}, argv_ = 0x7fff5fbf4160}, <No data fields>}, argc_ = 1}, <No data fields>}, construct=js::NO_CONSTRUCT) at /Users/Gregor/moz/b2g-inbound/js/src/vm/Interpreter.cpp:463
#36 0x000000010586a0c0 in js::Invoke (cx=0x100677b80, thisv=@0x7fff5fbf4208, fval=@0x7fff5fbf4230, argc=1, argv=0x7fff5fbf4948, rval={<js::MutableHandleBase<JS::Value>> = {<js::MutableValueOperations<JS::MutableHandle<JS::Value> >> = {<js::UnbarrieredMutableValueOperations<JS::MutableHandle<JS::Value> >> = {<js::ValueOperations<JS::MutableHandle<JS::Value> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}, ptr = 0x7fff5fbf4948}) at /Users/Gregor/moz/b2g-inbound/js/src/vm/Interpreter.cpp:513
#37 0x000000010586aa66 in js::InvokeGetterOrSetter (cx=0x100677b80, obj=0x118c56080, fval={data = {asBits = 18445477440921232000, debugView = {payload47 = 4606878336, tag = JSVAL_TAG_OBJECT}, s = {payload = {i32 = 311911040, u32 = 311911040, why = 311911040}}, asDouble = -nan(0xb800112976280), asPtr = 0xfffb800112976280, asWord = 18445477440921232000, asUIntPtr = 18445477440921232000}}, argc=1, argv=0x7fff5fbf4948, rval={<js::MutableHandleBase<JS::Value>> = {<js::MutableValueOperations<JS::MutableHandle<JS::Value> >> = {<js::UnbarrieredMutableValueOperations<JS::MutableHandle<JS::Value> >> = {<js::ValueOperations<JS::MutableHandle<JS::Value> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}, ptr = 0x7fff5fbf4948}) at /Users/Gregor/moz/b2g-inbound/js/src/vm/Interpreter.cpp:584
#38 0x000000010571c2d7 in js::Shape::set (this=0x112902e48, cx=0x100677b80, obj={<js::HandleBase<JSObject *>> = {<No data fields>}, ptr = 0x7fff5fbf4980}, receiver={<js::HandleBase<JSObject *>> = {<No data fields>}, ptr = 0x7fff5fbf4980}, strict=false, vp={<js::MutableHandleBase<JS::Value>> = {<js::MutableValueOperations<JS::MutableHandle<JS::Value> >> = {<js::UnbarrieredMutableValueOperations<JS::MutableHandle<JS::Value> >> = {<js::ValueOperations<JS::MutableHandle<JS::Value> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}, ptr = 0x7fff5fbf4948}) at Shape-inl.h:119
#39 0x000000010571d460 in js::baseops::SetPropertyHelper<(js::ExecutionMode)0> (cxArg=0x100677b80, obj={<js::HandleBase<JSObject *>> = {<No data fields>}, ptr = 0x7fff5fbf4980}, receiver={<js::HandleBase<JSObject *>> = {<No data fields>}, ptr = 0x7fff5fbf4980}, id={<js::HandleBase<jsid>> = {<No data fields>}, ptr = 0x7fff5fbf4918}, defineHow=0, vp={<js::MutableHandleBase<JS::Value>> = {<js::MutableValueOperations<JS::MutableHandle<JS::Value> >> = {<js::UnbarrieredMutableValueOperations<JS::MutableHandle<JS::Value> >> = {<js::ValueOperations<JS::MutableHandle<JS::Value> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}, ptr = 0x7fff5fbf4948}, strict=false) at /Users/Gregor/moz/b2g-inbound/js/src/jsobj.cpp:4750
#40 0x0000000105873b7b in SetPropertyOperation (cx=0x100677b80, script={<js::HandleBase<JSScript *>> = {<No data fields>}, ptr = 0x7fff5fbf6bd8}, pc=0x112dbc3d6 "6", lval={<js::HandleBase<JS::Value>> = {<js::ValueOperations<JS::Handle<JS::Value> >> = {<No data fields>}, <No data fields>}, ptr = 0x10e6a2308}, rval={<js::HandleBase<JS::Value>> = {<js::ValueOperations<JS::Handle<JS::Value> >> = {<No data fields>}, <No data fields>}, ptr = 0x10e6a2310}) at /Users/Gregor/moz/b2g-inbound/js/src/vm/Interpreter.cpp:334
#41 0x0000000105862c5b in Interpret (cx=0x100677b80, state=@0x7fff5fbf7158) at /Users/Gregor/moz/b2g-inbound/js/src/vm/Interpreter.cpp:2291
#42 0x000000010585d434 in js::RunScript (cx=0x100677b80, state=@0x7fff5fbf7158) at /Users/Gregor/moz/b2g-inbound/js/src/vm/Interpreter.cpp:420
#43 0x0000000105869982 in js::Invoke (cx=0x100677b80, args={<JS::detail::CallArgsBase<0>> = {<JS::CallReceiver> = {<JS::detail::CallReceiverBase<0>> = {<JS::detail::UsedRvalBase<IncludeUsedRval>> = {usedRval_ = false}, argv_ = 0x7fff5fbf7330}, <No data fields>}, argc_ = 1}, <No data fields>}, construct=js::NO_CONSTRUCT) at /Users/Gregor/moz/b2g-inbound/js/src/vm/Interpreter.cpp:482
#44 0x000000010586a0c0 in js::Invoke (cx=0x100677b80, thisv=@0x7fff5fbf7420, fval=@0x7fff5fbf74c0, argc=1, argv=0x7fff5fbf7620, rval={<js::MutableHandleBase<JS::Value>> = {<js::MutableValueOperations<JS::MutableHandle<JS::Value> >> = {<js::UnbarrieredMutableValueOperations<JS::MutableHandle<JS::Value> >> = {<js::ValueOperations<JS::MutableHandle<JS::Value> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}, ptr = 0x7fff5fbf7440}) at /Users/Gregor/moz/b2g-inbound/js/src/vm/Interpreter.cpp:513
#45 0x00000001055df8cc in JS_CallFunctionValue (cx=0x100677b80, objArg=0x11290b240, fval={data = {asBits = 18445477440921036416, debugView = {payload47 = 4606682752, tag = JSVAL_TAG_OBJECT}, s = {payload = {i32 = 311715456, u32 = 311715456, why = 311715456}}, asDouble = -nan(0xb800112946680), asPtr = 0xfffb800112946680, asWord = 18445477440921036416, asUIntPtr = 18445477440921036416}}, argc=1, argv=0x7fff5fbf7620, rval=0x7fff5fbf7690) at /Users/Gregor/moz/b2g-inbound/js/src/jsapi.cpp:5054
#46 0x0000000103c8ff9c in mozilla::dom::EventListener::HandleEvent (this=0x112dc6320, cx=0x100677b80, aThisObj={<js::HandleBase<JSObject *>> = {<No data fields>}, ptr = 0x7fff5fbf7738}, event=@0x112d98aa0, aRv=@0x7fff5fbf7898) at EventListenerBinding.cpp:45
#47 0x00000001024afec6 in mozilla::dom::EventListener::HandleEvent<mozilla::dom::EventTarget*> (this=0x112dc6320, thisObj=@0x7fff5fbf78c8, event=@0x112d98aa0, aRv=@0x7fff5fbf7898, aExceptionHandling=mozilla::dom::CallbackObject::eReportExceptions) at EventListenerBinding.h:51
#48 0x00000001024acf4f in nsEventListenerManager::HandleEventSubType (this=0x112db0380, aListenerStruct=0x112db03b8, aListener=@0x112db03b8, aDOMEvent=0x112d98aa0, aCurrentTarget=0x118643510, aPusher=0x7fff5fbf7cb0) at /Users/Gregor/moz/b2g-inbound/content/events/src/nsEventListenerManager.cpp:952
#49 0x00000001024ad2ab in nsEventListenerManager::HandleEventInternal (this=0x112db0380, aPresContext=0x0, aEvent=0x112d98b00, aDOMEvent=0x7fff5fbf7d10, aCurrentTarget=0x118643510, aEventStatus=0x7fff5fbf7d18, aPusher=0x7fff5fbf7cb0) at /Users/Gregor/moz/b2g-inbound/content/events/src/nsEventListenerManager.cpp:1029
#50 0x00000001024a8c53 in nsEventListenerManager::HandleEvent (this=0x112db0380, aPresContext=0x0, aEvent=0x112d98b00, aDOMEvent=0x7fff5fbf7d10, aCurrentTarget=0x118643510, aEventStatus=0x7fff5fbf7d18, aPusher=0x7fff5fbf7cb0) at nsEventListenerManager.h:325
#51 0x00000001024a7bcf in nsEventTargetChainItem::HandleEvent (this=0x118fa6008, aVisitor=@0x7fff5fbf7d00, aCd=@0x7fff5fbf7dd0, aPusher=0x7fff5fbf7cb0) at /Users/Gregor/moz/b2g-inbound/content/events/src/nsEventDispatcher.cpp:195
#52 0x00000001024a4acb in nsEventTargetChainItem::HandleEventTargetChain (aChain=@0x7fff5fbf7dc8, aVisitor=@0x7fff5fbf7d00, aCallback=0x0, aCd=@0x7fff5fbf7dd0, aPusher=0x7fff5fbf7cb0) at /Users/Gregor/moz/b2g-inbound/content/events/src/nsEventDispatcher.cpp:292
#53 0x00000001024a6214 in nsEventDispatcher::Dispatch (aTarget=0x118643510, aPresContext=0x0, aEvent=0x112d98b00, aDOMEvent=0x112d98aa0, aEventStatus=0x7fff5fbf7f84, aCallback=0x0, aTargets=0x0) at /Users/Gregor/moz/b2g-inbound/content/events/src/nsEventDispatcher.cpp:605
#54 0x00000001024a65d0 in nsEventDispatcher::DispatchDOMEvent (aTarget=0x118643510, aEvent=0x0, aDOMEvent=0x112d98aa0, aPresContext=0x0, aEventStatus=0x7fff5fbf7f84) at /Users/Gregor/moz/b2g-inbound/content/events/src/nsEventDispatcher.cpp:672
#55 0x0000000102470747 in nsDOMEventTargetHelper::DispatchEvent (this=0x118643510, aEvent=0x112d98aa0, aRetVal=0x7fff5fbf802f) at /Users/Gregor/moz/b2g-inbound/content/events/src/nsDOMEventTargetHelper.cpp:242
#56 0x000000010285a7c0 in mozilla::dom::DOMRequest::DispatchEvent (this=0x118643510, evt=0x112d98aa0, _retval=0x7fff5fbf802f) at DOMRequest.h:31
#57 0x000000010286a0a3 in mozilla::dom::DOMRequest::FireEvent (this=0x118643510, aType=@0x7fff5fbf8090, aBubble=false, aCancelable=false) at /Users/Gregor/moz/b2g-inbound/dom/base/DOMRequest.cpp:186
#58 0x0000000102869ea7 in mozilla::dom::DOMRequest::FireSuccess (this=0x118643510, aResult={<js::HandleBase<JS::Value>> = {<js::ValueOperations<JS::Handle<JS::Value> >> = {<No data fields>}, <No data fields>}, ptr = 0x7fff5fbf83b0}) at /Users/Gregor/moz/b2g-inbound/dom/base/DOMRequest.cpp:126
#59 0x000000010286ac1c in mozilla::dom::DOMRequestService::FireSuccess (this=0x112dc6180, aRequest=0x118643560, aResult=@0x7fff5fbf83b0) at /Users/Gregor/moz/b2g-inbound/dom/base/DOMRequest.cpp:222
#60 0x0000000104319419 in NS_InvokeByIndex (that=0x112dc6180, methodIndex=5, paramCount=2, params=0x7fff5fbf8398) at xptcinvoke_x86_64_unix.cpp:162
#61 0x0000000103194f94 in CallMethodHelper::Invoke (this=0x7fff5fbf8358) at /Users/Gregor/moz/b2g-inbound/js/xpconnect/src/XPCWrappedNative.cpp:2797
#62 0x00000001031930d0 in CallMethodHelper::Call (this=0x7fff5fbf8358) at /Users/Gregor/moz/b2g-inbound/js/xpconnect/src/XPCWrappedNative.cpp:2137
#63 0x000000010318f9a4 in XPCWrappedNative::CallMethod (ccx=@0x7fff5fbf8560, mode=XPCWrappedNative::CALL_METHOD) at /Users/Gregor/moz/b2g-inbound/js/xpconnect/src/XPCWrappedNative.cpp:2103
#64 0x00000001031a0fcd in XPC_WN_CallMethod (cx=0x100674fc0, argc=2, vp=0x10e6a20b8) at /Users/Gregor/moz/b2g-inbound/js/xpconnect/src/XPCWrappedNativeJSOps.cpp:1308
#65 0x00000001058769b5 in js::CallJSNative (cx=0x100674fc0, native=0x1031a0c50 <XPC_WN_CallMethod(JSContext*, unsigned int, JS::Value*)>, args=@0x7fff5fbf8c30) at jscntxtinlines.h:220
#66 0x0000000105869873 in js::Invoke (cx=0x100674fc0, args={<JS::detail::CallArgsBase<0>> = {<JS::CallReceiver> = {<JS::detail::CallReceiverBase<0>> = {<JS::detail::UsedRvalBase<IncludeUsedRval>> = {usedRval_ = false}, argv_ = 0x10e6a20c8}, <No data fields>}, argc_ = 2}, <No data fields>}, construct=js::NO_CONSTRUCT) at /Users/Gregor/moz/b2g-inbound/js/src/vm/Interpreter.cpp:463
#67 0x0000000105863ed2 in Interpret (cx=0x100674fc0, state=@0x7fff5fbfb3b8) at /Users/Gregor/moz/b2g-inbound/js/src/vm/Interpreter.cpp:2466
#68 0x000000010585d434 in js::RunScript (cx=0x100674fc0, state=@0x7fff5fbfb3b8) at /Users/Gregor/moz/b2g-inbound/js/src/vm/Interpreter.cpp:420
#69 0x0000000105869982 in js::Invoke (cx=0x100674fc0, args={<JS::detail::CallArgsBase<0>> = {<JS::CallReceiver> = {<JS::detail::CallReceiverBase<0>> = {<JS::detail::UsedRvalBase<IncludeUsedRval>> = {usedRval_ = false}, argv_ = 0x7fff5fbfb580}, <No data fields>}, argc_ = 1}, <No data fields>}, construct=js::NO_CONSTRUCT) at /Users/Gregor/moz/b2g-inbound/js/src/vm/Interpreter.cpp:482
#70 0x00000001056699f3 in js::CallOrConstructBoundFunction (cx=0x100674fc0, argc=1, vp=0x7fff5fbfbcb0) at /Users/Gregor/moz/b2g-inbound/js/src/jsfun.cpp:1257
#71 0x00000001058769b5 in js::CallJSNative (cx=0x100674fc0, native=0x1056695a0 <js::CallOrConstructBoundFunction(JSContext*, unsigned int, JS::Value*)>, args=@0x7fff5fbfbb80) at jscntxtinlines.h:220
#72 0x0000000105869873 in js::Invoke (cx=0x100674fc0, args={<JS::detail::CallArgsBase<0>> = {<JS::CallReceiver> = {<JS::detail::CallReceiverBase<0>> = {<JS::detail::UsedRvalBase<IncludeUsedRval>> = {usedRval_ = false}, argv_ = 0x7fff5fbfbcc0}, <No data fields>}, argc_ = 1}, <No data fields>}, construct=js::NO_CONSTRUCT) at /Users/Gregor/moz/b2g-inbound/js/src/vm/Interpreter.cpp:463
#73 0x000000010586a0c0 in js::Invoke (cx=0x100674fc0, thisv=@0x7fff5fbfbdb0, fval=@0x7fff5fbfbe50, argc=1, argv=0x7fff5fbfbfa8, rval={<js::MutableHandleBase<JS::Value>> = {<js::MutableValueOperations<JS::MutableHandle<JS::Value> >> = {<js::UnbarrieredMutableValueOperations<JS::MutableHandle<JS::Value> >> = {<js::ValueOperations<JS::MutableHandle<JS::Value> >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}, ptr = 0x7fff5fbfbdd0}) at /Users/Gregor/moz/b2g-inbound/js/src/vm/Interpreter.cpp:513
#74 0x00000001055df8cc in JS_CallFunctionValue (cx=0x100674fc0, objArg=0x10e34a300, fval={data = {asBits = 18445477441023162240, debugView = {payload47 = 4708808576, tag = JSVAL_TAG_OBJECT}, s = {payload = {i32 = 413841280, u32 = 413841280, why = 413841280}}, asDouble = -nan(0xb800118aab780), asPtr = 0xfffb800118aab780, asWord = 18445477441023162240, asUIntPtr = 18445477441023162240}}, argc=1, argv=0x7fff5fbfbfa8, rval=0x7fff5fbfc018) at /Users/Gregor/moz/b2g-inbound/js/src/jsapi.cpp:5054
#75 0x0000000103c8ef4f in mozilla::dom::EventHandlerNonNull::Call (this=0x1190e13c0, cx=0x100674fc0, aThisObj={<js::HandleBase<JSObject *>> = {<No data fields>}, ptr = 0x7fff5fbfc0d0}, event=@0x11086e400, aRv=@0x7fff5fbfc2e8) at EventHandlerBinding.cpp:37
#76 0x0000000102a67da8 in mozilla::dom::EventHandlerNonNull::Call<nsISupports*> (this=0x1190e13c0, thisObj=@0x1190d8a18, event=@0x11086e400, aRv=@0x7fff5fbfc2e8, aExceptionHandling=mozilla::dom::CallbackObject::eReportExceptions) at EventHandlerBinding.h:59
#77 0x0000000102a66312 in nsJSEventListener::HandleEvent (this=0x1190d8a00, aEvent=0x11086e400) at /Users/Gregor/moz/b2g-inbound/dom/src/events/nsJSEventListener.cpp:245
#78 0x00000001024acf90 in nsEventListenerManager::HandleEventSubType (this=0x1188b21a0, aListenerStruct=0x1188b21d8, aListener=@0x1188b21d8, aDOMEvent=0x11086e400, aCurrentTarget=0x1190c3d80, aPusher=0x7fff5fbfc920) at /Users/Gregor/moz/b2g-inbound/content/events/src/nsEventListenerManager.cpp:955
#79 0x00000001024ad2ab in nsEventListenerManager::HandleEventInternal (this=0x1188b21a0, aPresContext=0x0, aEvent=0x112d13320, aDOMEvent=0x7fff5fbfc980, aCurrentTarget=0x1190c3d80, aEventStatus=0x7fff5fbfc988, aPusher=0x7fff5fbfc920) at /Users/Gregor/moz/b2g-inbound/content/events/src/nsEventListenerManager.cpp:1029
#80 0x00000001024a8c53 in nsEventListenerManager::HandleEvent (this=0x1188b21a0, aPresContext=0x0, aEvent=0x112d13320, aDOMEvent=0x7fff5fbfc980, aCurrentTarget=0x1190c3d80, aEventStatus=0x7fff5fbfc988, aPusher=0x7fff5fbfc920) at nsEventListenerManager.h:325
#81 0x00000001024a7bcf in nsEventTargetChainItem::HandleEvent (this=0x112525008, aVisitor=@0x7fff5fbfc970, aCd=@0x7fff5fbfca40, aPusher=0x7fff5fbfc920) at /Users/Gregor/moz/b2g-inbound/content/events/src/nsEventDispatcher.cpp:195
#82 0x00000001024a4acb in nsEventTargetChainItem::HandleEventTargetChain (aChain=@0x7fff5fbfca38, aVisitor=@0x7fff5fbfc970, aCallback=0x0, aCd=@0x7fff5fbfca40, aPusher=0x7fff5fbfc920) at /Users/Gregor/moz/b2g-inbound/content/events/src/nsEventDispatcher.cpp:292
#83 0x00000001024a6214 in nsEventDispatcher::Dispatch (aTarget=0x1190c3d80, aPresContext=0x0, aEvent=0x112d13320, aDOMEvent=0x11086e400, aEventStatus=0x7fff5fbfcbf4, aCallback=0x0, aTargets=0x0) at /Users/Gregor/moz/b2g-inbound/content/events/src/nsEventDispatcher.cpp:605
#84 0x00000001024a65d0 in nsEventDispatcher::DispatchDOMEvent (aTarget=0x1190c3d80, aEvent=0x0, aDOMEvent=0x11086e400, aPresContext=0x0, aEventStatus=0x7fff5fbfcbf4) at /Users/Gregor/moz/b2g-inbound/content/events/src/nsEventDispatcher.cpp:672
#85 0x0000000102470747 in nsDOMEventTargetHelper::DispatchEvent (this=0x1190c3d80, aEvent=0x11086e400, aRetVal=0x7fff5fbfcc83) at /Users/Gregor/moz/b2g-inbound/content/events/src/nsDOMEventTargetHelper.cpp:242
#86 0x0000000102b590f4 in mozilla::dom::indexedDB::AsyncConnectionHelper::OnSuccess (this=0x11908f3c0) at /Users/Gregor/moz/b2g-inbound/dom/indexedDB/AsyncConnectionHelper.cpp:467
#87 0x0000000102b57f54 in mozilla::dom::indexedDB::AsyncConnectionHelper::Run (this=0x11908f3c0) at /Users/Gregor/moz/b2g-inbound/dom/indexedDB/AsyncConnectionHelper.cpp:237
#88 0x00000001042dfb33 in nsThread::ProcessNextEvent (this=0x100623760, mayWait=false, result=0x7fff5fbfcf93) at /Users/Gregor/moz/b2g-inbound/xpcom/threads/nsThread.cpp:622
#89 0x000000010424076c in NS_ProcessPendingEvents (thread=0x100623760, timeout=20) at nsThreadUtils.cpp:201
#90 0x00000001035e97cf in nsBaseAppShell::NativeEventCallback (this=0x10e6bf5c0) at /Users/Gregor/moz/b2g-inbound/widget/xpwidgets/nsBaseAppShell.cpp:95
#91 0x000000010353740c in nsAppShell::ProcessGeckoEvents (aInfo=0x10e6bf5c0) at /Users/Gregor/moz/b2g-inbound/widget/cocoa/nsAppShell.mm:388
#92 0x00007fff93f1cb31 in __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ ()
#93 0x00007fff93f1c455 in __CFRunLoopDoSources0 ()
#94 0x00007fff93f3f7f5 in __CFRunLoopRun ()
#95 0x00007fff93f3f0e2 in CFRunLoopRunSpecific ()
#96 0x00007fff927cceb4 in RunCurrentEventLoopInMode ()
#97 0x00007fff927ccc52 in ReceiveNextEventCommon ()
#98 0x00007fff927ccae3 in BlockUntilNextEventMatchingListInMode ()
#99 0x00007fff8887e533 in _DPSNextEvent ()
#100 0x00007fff8887ddf2 in -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] ()
#101 0x0000000103535b57 in -[GeckoNSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] (self=0x10dc85c50, _cmd=0x7fff890ac404, mask=18446744073709551615, expiration=0x422d63c37f00000d, mode=0x7fff796081c0, flag=1 '\001') at /Users/Gregor/moz/b2g-inbound/widget/cocoa/nsAppShell.mm:165
#102 0x00007fff888751a3 in -[NSApplication run] ()
#103 0x0000000103537ee1 in nsAppShell::Run (this=0x10e6bf5c0) at /Users/Gregor/moz/b2g-inbound/widget/cocoa/nsAppShell.mm:742
#104 0x000000010328ff8c in nsAppStartup::Run (this=0x10e1c1740) at /Users/Gregor/moz/b2g-inbound/toolkit/components/startup/nsAppStartup.cpp:268
#105 0x00000001015705d6 in XREMain::XRE_mainRun (this=0x7fff5fbfeeb0) at /Users/Gregor/moz/b2g-inbound/toolkit/xre/nsAppRunner.cpp:3886
#106 0x0000000101570dd9 in XREMain::XRE_main (this=0x7fff5fbfeeb0, argc=3, argv=0x7fff5fbffaa8, aAppData=0x100008230) at /Users/Gregor/moz/b2g-inbound/toolkit/xre/nsAppRunner.cpp:3954
#107 0x000000010157123d in XRE_main (argc=3, argv=0x7fff5fbffaa8, aAppData=0x100008230, aFlags=0) at /Users/Gregor/moz/b2g-inbound/toolkit/xre/nsAppRunner.cpp:4156
#108 0x0000000100001623 in do_main (argc=3, argv=0x7fff5fbffaa8) at /Users/Gregor/moz/b2g-inbound/b2g/app/nsBrowserApp.cpp:168
#109 0x0000000100001078 in main (argc=3, argv=0x7fff5fbffaa8) at /Users/Gregor/moz/b2g-inbound/b2g/app/nsBrowserApp.cpp:261
Summary: Compartment mismatch when starting b2g-desktop oop → Compartment mismatch when starting b2g-desktop
Attached patch patch (obsolete) — Splinter Review
Assignee: nobody → anygregor
Attachment #822105 - Flags: review?(mrbkap)
Blocks: 924702
Attached patch patchSplinter Review
Attachment #822105 - Attachment is obsolete: true
Attachment #822105 - Flags: review?(mrbkap)
Attachment #822125 - Flags: review?(mrbkap)
Summary: Compartment mismatch when starting b2g-desktop → Compartment mismatch when starting b2g-desktop and packaged apps on desktop
Comment on attachment 822125 [details] [diff] [review]
patch

Review of attachment 822125 [details] [diff] [review]:
-----------------------------------------------------------------

There are a couple of other bugs in this function and we should probably move the RootedValue up above the call to GetAppInfo.
Attachment #822125 - Flags: review?(mrbkap) → review-
Thanks for looking!
We backed out the patch that caused it.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → INVALID
We should not be manually deleting a reference counted object and it's a good idea to make sure the refcount is at least 1 before calling functions on it. I also moved the RootedValue above the GetAppInfo call so we don't pass an unrooted Value* to a function which might expect it to be rooted.
Attachment #822405 - Flags: feedback?(fabrice)
Comment on attachment 822405 [details] [diff] [review]
Fix a couple of other things as well

I attached this patch to bug 924702 so it doesn't get lost in a closed bug.
Attachment #822405 - Flags: feedback?(fabrice)
(In reply to Gregor Wagner [:gwagner] from comment #5)
> Thanks for looking!
> We backed out the patch that caused it.

Should mark this as fixed by backout actually, rather than invalid.
Resolution: INVALID → FIXED
Target Milestone: --- → mozilla27
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: