Closed
Bug 1389291
Opened 7 years ago
Closed 7 years ago
Assertion failure: !mInStyleRefresh, in GeckoRestyleManager::AttributeWillChange
Categories
(Core :: DOM: Core & HTML, defect)
Tracking
()
RESOLVED
WORKSFORME
People
(Reporter: bradwerth, Assigned: bradwerth)
Details
Steps to Reproduce: 1) Install WebExtension version of Ad Block Plus from https://downloads.adblockplus.org/devbuilds/adblockplusfirefox/. 2) Launch Firefox, wait for all chrome content to load, then move cursor over the ABP icon in toolbar, wait for tooltip to appear, then click the ABP icon.
Assignee | ||
Comment 1•7 years ago
|
||
Here's a very long call stack showing how this manifests. This stack DOES NOT contain a call to GeckoRestyleManager::BeginProcessingRestyles, which is the only function that sets mInStyleRefresh to true, so that must have been called on a prior spin of the event loop. 0: mozilla::GeckoRestyleManager::AttributeWillChange() at GeckoRestyleManager.cpp:312 1: mozilla::RestyleManager::AttributeWillChange() at RestyleManagerInlines.h:61 2: mozilla::PresShell::AttributeWillChange() at PresShell.cpp:4362 3: non-virtual thunk to mozilla::PresShell::AttributeWillChange() at PresShell.cpp:0 4: nsNodeUtils::AttributeWillChange() at nsNodeUtils.cpp:132 5: nsDOMCSSAttributeDeclaration::GetCSSDeclaration() at nsDOMCSSAttrDeclaration.cpp:118 6: nsresult nsDOMCSSDeclaration::ModifyDeclaration<nsDOMCSSDeclaration::ParsePropertyValue() at nsDOMCSSDeclaration.cpp:300 7: nsDOMCSSDeclaration::ParsePropertyValue() at nsDOMCSSDeclaration.cpp:353 8: nsDOMCSSDeclaration::SetPropertyValue() at nsDOMCSSDeclaration.cpp:91 9: nsDOMCSSAttributeDeclaration::SetPropertyValue() at nsDOMCSSAttrDeclaration.cpp:224 10: nsDOMCSSDeclaration::SetWidth() at nsCSSPropList.h:4449 11: mozilla::dom::CSS2PropertiesBinding::set_width() at CSS2PropertiesBinding.cpp:44451 12: mozilla::dom::GenericBindingSetter() at BindingUtils.cpp:3014 13: mozilla::dom::GenericBindingSetter() at BindingUtils.cpp:2984 14: js::InternalCallOrConstruct() at Interpreter.cpp:469 15: InternalCall() at Interpreter.cpp:514 16: js::Call() at Interpreter.cpp:533 17: js::CallSetter() at Interpreter.cpp:662 18: SetExistingProperty() at NativeObject.cpp:2764 19: js::NativeSetProperty() at NativeObject.cpp:2799 20: js::SetProperty() at NativeObject.h:1553 21: js::SetPropertyIgnoringNamedGetter() at BaseProxyHandler.cpp:182 22: mozilla::dom::DOMProxyHandler::set() at DOMJSProxyHandler.cpp:225 23: js::Proxy::set() at Proxy.cpp:384 24: JSObject::nonNativeSetProperty() at jsobj.cpp:1047 25: js::SetProperty() at NativeObject.h:1552 26: js::Wrapper::set() at Wrapper.cpp:156 27: js::CrossCompartmentWrapper::set() at CrossCompartmentWrapper.cpp:238 28: js::Proxy::set() at Proxy.cpp:384 29: JSObject::nonNativeSetProperty() at jsobj.cpp:1047 30: js::SetProperty() at NativeObject.h:1552 31: SetPropertyOperation() at Interpreter.cpp:243 32: Interpret() at Interpreter.cpp:2862 33: js::RunScript() at Interpreter.cpp:409 34: js::InternalCallOrConstruct() at Interpreter.cpp:487 35: InternalCall() at Interpreter.cpp:514 36: js::CallFromStack() at Interpreter.cpp:520 37: Interpret() at Interpreter.cpp:3065 38: js::RunScript() at Interpreter.cpp:409 39: js::InternalCallOrConstruct() at Interpreter.cpp:487 40: InternalCall() at Interpreter.cpp:514 41: js::Call() at Interpreter.cpp:533 42: JS_CallFunctionValue() at jsapi.cpp:2884 43: nsFrameMessageManager::ReceiveMessage() at nsFrameMessageManager.cpp:1104 44: nsFrameMessageManager::ReceiveMessage() at nsFrameMessageManager.cpp:913 45: nsSameProcessAsyncMessageBase::ReceiveMessage() at nsFrameMessageManager.cpp:2094 46: nsAsyncMessageToParent::HandleMessage() at nsInProcessTabChildGlobal.cpp:62 47: mozilla::dom::SameProcessMessageQueue::Runnable::Run() at SameProcessMessageQueue.cpp:73 48: mozilla::dom::SameProcessMessageQueue::Flush() at SameProcessMessageQueue.cpp:42 49: SameChildProcessMessageManagerCallback::DoSendBlockingMessage() at nsFrameMessageManager.cpp:1937 50: nsFrameMessageManager::SendMessage() at nsFrameMessageManager.cpp:653 51: nsFrameMessageManager::SendSyncMessage() at nsFrameMessageManager.cpp:560 52: mozilla::dom::ProcessGlobal::SendSyncMessage() at ProcessGlobal.h:50 53: NS_InvokeByIndex at xptcinvoke_asm_x86_64_unix.S:129 54: CallMethodHelper::Invoke() at XPCWrappedNative.cpp:1996 55: CallMethodHelper::Call() at XPCWrappedNative.cpp:1315 56: XPCWrappedNative::CallMethod() at XPCWrappedNative.cpp:1282 57: XPC_WN_CallMethod() at XPCWrappedNativeJSOps.cpp:967 58: XPC_WN_CallMethod() at jscntxtinlines.h:293 59: js::InternalCallOrConstruct() at Interpreter.cpp:469 60: InternalCall() at Interpreter.cpp:514 61: js::CallFromStack() at Interpreter.cpp:520 62: Interpret() at Interpreter.cpp:3065 63: js::RunScript() at Interpreter.cpp:409 64: js::InternalCallOrConstruct() at Interpreter.cpp:487 65: InternalCall() at Interpreter.cpp:514 66: js::Call() at Interpreter.cpp:533 67: JS_CallFunctionValue() at jsapi.cpp:2884 68: nsXPCWrappedJSClass::CallMethod() at XPCWrappedJSClass.cpp:1215 69: nsXPCWrappedJS::CallMethod() at XPCWrappedJS.cpp:615 70: ::PrepareAndDispatch() at xptcstubs_x86_64_darwin.cpp:122 71: SharedStub + 91 72: nsContentPolicy::CheckPolicy() at nsContentPolicy.cpp:153 73: nsContentPolicy::ShouldLoad() at nsContentPolicy.cpp:214 74: NS_CheckContentLoadPolicy() at nsContentPolicyUtils.h:228 75: ShouldLoadCachedImage() at imgLoader.cpp:581 76: ValidateSecurityInfo() at imgLoader.cpp:693 77: imgLoader::ValidateEntry() at imgLoader.cpp:1818 78: imgLoader::LoadImage() at imgLoader.cpp:2178 79: nsContentUtils::LoadImage() at nsContentUtils.cpp:3722 80: mozilla::css::ImageLoader::LoadImage() at ImageLoader.cpp:270 81: mozilla::css::ImageValue::Initialize() at nsCSSValue.cpp:3047 82: mozilla::css::ImageValue::ImageValue() at nsCSSValue.cpp:3024 83: mozilla::css::ImageValue::ImageValue() at nsCSSValue.cpp:3023 84: nsCSSValue::StartImageLoad() at nsCSSValue.cpp:905 85: TryToStartImageLoadOnValue() at nsCSSDataBlock.cpp:98 86: TryToStartImageLoad() at nsCSSDataBlock.cpp:143 87: MapSinglePropertyInto() at nsCSSDataBlock.cpp:186 88: nsCSSExpandedDataBlock::MapRuleInfoInto() at nsCSSDataBlock.cpp:785 89: void mozilla::CSSVariableImageTable::ReplaceAll<nsCSSExpandedDataBlock::MapRuleInfoInto() at CSSVariableImageTable.h:102 90: nsCSSExpandedDataBlock::MapRuleInfoInto() at nsCSSDataBlock.cpp:784 91: (anonymous namespace)::CSSParserImpl::ParsePropertyWithVariableReferences() at nsCSSParser.cpp:2934 92: nsCSSParser::ParsePropertyWithVariableReferences() at nsCSSParser.cpp:18158 93: nsRuleNode::ResolveVariableReferences() at nsRuleNode.cpp:2558 94: nsRuleNode::WalkRuleTree() at nsRuleNode.cpp:2667 95: nsStyleList const* nsRuleNode::GetStyleList<true>() at nsStyleStructList.h:51 96: nsStyleList const* nsStyleContext::DoGetStyleList<true>() at nsStyleStructList.h:51 97: nsStyleContext::StyleList() at nsStyleStructList.h:51 98: nsStyleContext::ThreadsafeStyleList() at nsStyleStructList.h:51 99: nsStyleContext::CalcStyleDifference() at nsStyleContext.cpp:235 100: mozilla::ElementRestyler::CaptureChange() at GeckoRestyleManager.cpp:1326 101: mozilla::ElementRestyler::RestyleSelf() at GeckoRestyleManager.cpp:2751 102: mozilla::ElementRestyler::Restyle() at GeckoRestyleManager.cpp:1880 103: mozilla::ElementRestyler::RestyleContentChildren() at GeckoRestyleManager.cpp:3503 104: mozilla::ElementRestyler::RestyleChildren() at GeckoRestyleManager.cpp:3031 105: mozilla::ElementRestyler::Restyle() at GeckoRestyleManager.cpp:2035 106: mozilla::ElementRestyler::RestyleContentChildren() at GeckoRestyleManager.cpp:3503 107: mozilla::ElementRestyler::RestyleChildren() at GeckoRestyleManager.cpp:3031 108: mozilla::ElementRestyler::Restyle() at GeckoRestyleManager.cpp:2035 109: mozilla::ElementRestyler::RestyleContentChildren() at GeckoRestyleManager.cpp:3503 110: mozilla::ElementRestyler::RestyleChildren() at GeckoRestyleManager.cpp:3031 111: mozilla::ElementRestyler::Restyle() at GeckoRestyleManager.cpp:2035 112: mozilla::ElementRestyler::ComputeStyleChangeFor() at GeckoRestyleManager.cpp:3167 113: mozilla::GeckoRestyleManager::ComputeAndProcessStyleChange() at GeckoRestyleManager.cpp:3578 114: mozilla::GeckoRestyleManager::RestyleElement() at GeckoRestyleManager.cpp:232 115: mozilla::RestyleTracker::ProcessOneRestyle() at RestyleTracker.cpp:94 116: mozilla::RestyleTracker::DoProcessRestyles() at RestyleTracker.cpp:255 117: mozilla::GeckoRestyleManager::ProcessRestyles() at GeckoRestyleManager.h:371 118: mozilla::GeckoRestyleManager::UpdateOnlyAnimationStyles() at GeckoRestyleManager.cpp:684 119: mozilla::GeckoRestyleManager::ProcessPendingRestyles() at GeckoRestyleManager.cpp:557 120: mozilla::RestyleManager::ProcessPendingRestyles() at RestyleManagerInlines.h:44 121: mozilla::PresShell::DoFlushPendingNotifications() at PresShell.cpp:4200 122: nsIPresShell::FlushPendingNotifications() at nsIPresShell.h:591 123: nsRefreshDriver::Tick() at nsRefreshDriver.cpp:1890 124: mozilla::RefreshDriverTimer::TickDriver() at nsRefreshDriver.cpp:330 125: mozilla::RefreshDriverTimer::TickRefreshDrivers() at nsRefreshDriver.cpp:300 126: mozilla::RefreshDriverTimer::Tick() at nsRefreshDriver.cpp:322 127: mozilla::VsyncRefreshDriverTimer::RunRefreshDrivers() at nsRefreshDriver.cpp:763 128: mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::TickRefreshDriver() at nsRefreshDriver.cpp:676 129: mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::ParentProcessVsyncNotifier::Run() at nsRefreshDriver.cpp:522 130: nsThread::ProcessNextEvent() at nsThread.cpp:1446 131: NS_ProcessPendingEvents() at nsThreadUtils.cpp:422 132: nsBaseAppShell::NativeEventCallback() at nsBaseAppShell.cpp:97 133: nsAppShell::ProcessGeckoEvents() at nsAppShell.mm:409 134: 0x00007fff764ac321 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17 135: 0x00007fff7648d21d CoreFoundation`__CFRunLoopDoSources0 + 557 136: 0x00007fff7648c716 CoreFoundation`__CFRunLoopRun + 934 137: 0x00007fff7648c114 CoreFoundation`CFRunLoopRunSpecific + 420 138: 0x00007fff759ecebc HIToolbox`RunCurrentEventLoopInMode + 240 139: 0x00007fff759eccf1 HIToolbox`ReceiveNextEventCommon + 432 140: 0x00007fff759ecb26 HIToolbox`_BlockUntilNextEventMatchingListInModeWithFilter + 71 141: 0x00007fff73f85a54 AppKit`_DPSNextEvent + 1120 142: 0x00007fff747017ee AppKit`-[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 2796 143: ::-[GeckoNSApplication nextEventMatchingMask:untilDate:inMode:dequeue:]() at nsAppShell.mm:131 144: 0x00007fff73f7a3db AppKit`-[NSApplication run] + 926 145: nsAppShell::Run() at nsAppShell.mm:685 146: nsAppStartup::Run() at nsAppStartup.cpp:287 147: XREMain::XRE_mainRun() at nsAppRunner.cpp:4632 148: XREMain::XRE_main() at nsAppRunner.cpp:4796 149: XRE_main() at nsAppRunner.cpp:4891 150: mozilla::BootstrapImpl::XRE_main() at Bootstrap.cpp:45 151: 0x000000010439f0e6 firefox`do_main() at nsBrowserApp.cpp:236 152: 0x000000010439ebc1 firefox`main() at nsBrowserApp.cpp:309 153: 0x000000010439ead4 firefox`start + 52
Assignee | ||
Comment 2•7 years ago
|
||
No longer reproduces.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → WORKSFORME
You need to log in
before you can comment on or make changes to this bug.
Description
•