thread '<unnamed>' panicked at 'assertion failed: !author_styles.stylesheets.dirty()', servo/components/style/gecko/wrapper.rs:174:9

RESOLVED FIXED in Firefox 62

Status

()

defect
P3
normal
RESOLVED FIXED
Last year
Last year

People

(Reporter: jkratzer, Assigned: emilio)

Tracking

(Blocks 1 bug, {assertion, testcase})

59 Branch
mozilla62
Points:
---
Dependency tree / graph
Bug Flags:
in-testsuite +

Firefox Tracking Flags

(firefox-esr52 unaffected, firefox-esr60 unaffected, firefox60 unaffected, firefox61 wontfix, firefox62 fixed)

Details

Attachments

(1 attachment)

Posted file trigger.html
Testcase found while fuzzing mozilla-central rev f0d13136b358.

rax = 0x0000000000000000   rdx = 0x0000000000000000
rcx = 0x00007f328bdae2dd   rbx = 0x00007f328c07c700
rsi = 0x00007f328c07d770   rdi = 0x00007f328c07c540
rbp = 0x00007ffce3855e10   rsp = 0x00007ffce3855e00
r8 = 0x00007f328c07d770    r9 = 0x00007f328d148740
r10 = 0x0000000000000058   r11 = 0x00007f328bd247a0
r12 = 0x00007f327f580c20   r13 = 0x0000000000000027
r14 = 0x00000000000000ae   r15 = 0x0000000000000009
rip = 0x000000000041c788
OS|Linux|0.0.0 Linux 4.4.0-116-generic #140-Ubuntu SMP Mon Feb 12 21:23:04 UTC 2018 x86_64
CPU|amd64|family 6 model 78 stepping 3|1
GPU|||
Crash|SIGSEGV|0x0|0
0|0|firefox|mozalloc_abort|hg:hg.mozilla.org/mozilla-central:memory/mozalloc/mozalloc_abort.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|33|0x5
0|1|firefox|abort|hg:hg.mozilla.org/mozilla-central:memory/mozalloc/mozalloc_abort.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|80|0x5
0|2|libxul.so|panic_abort::__rust_start_panic|git:github.com/rust-lang/rust:src/libpanic_abort/lib.rs:4d90ac38c0b61bb69470b61ea2cccea0df48d9e5|59|0x5
0|3|libxul.so|std::panicking::rust_panic|git:github.com/rust-lang/rust:src/libstd/panicking.rs:4d90ac38c0b61bb69470b61ea2cccea0df48d9e5|608|0x9
0|4|libxul.so|std::panicking::rust_panic_with_hook|git:github.com/rust-lang/rust:src/libstd/panicking.rs:4d90ac38c0b61bb69470b61ea2cccea0df48d9e5|593|0xd
0|5|libxul.so|std::panicking::begin_panic<&str>|git:github.com/rust-lang/rust:src/libstd/panicking.rs:4d90ac38c0b61bb69470b61ea2cccea0df48d9e5|538|0x12
0|6|libxul.so|style::stylist::Stylist::push_applicable_declarations<style::gecko::wrapper::GeckoElement,closure>|git:github.com/rust-lang/rust:src/libcore/macros.rs:4d90ac38c0b61bb69470b61ea2cccea0df48d9e5|0|0x28
0|7|libxul.so|style::style_resolver::StyleResolverForElement<style::gecko::wrapper::GeckoElement>::match_primary<style::gecko::wrapper::GeckoElement>|hg:hg.mozilla.org/mozilla-central:servo/components/style/style_resolver.rs:f0d13136b3580182df241674cf97a3fbf1543c2a|438|0x3e
0|8|libxul.so|style::style_resolver::StyleResolverForElement<style::gecko::wrapper::GeckoElement>::resolve_primary_style<style::gecko::wrapper::GeckoElement>|hg:hg.mozilla.org/mozilla-central:servo/components/style/style_resolver.rs:f0d13136b3580182df241674cf97a3fbf1543c2a|157|0xd
0|9|libxul.so|style::traversal::resolve_style<style::gecko::wrapper::GeckoElement>|hg:hg.mozilla.org/mozilla-central:servo/components/style/traversal.rs:f0d13136b3580182df241674cf97a3fbf1543c2a|358|0xc
0|10|libxul.so|geckoservo::glue::Servo_ResolveStyleLazily|hg:hg.mozilla.org/mozilla-central:servo/ports/geckolib/glue.rs:f0d13136b3580182df241674cf97a3fbf1543c2a|3764|0xb
0|11|libxul.so|mozilla::ServoStyleSet::ResolveStyleLazilyInternal|hg:hg.mozilla.org/mozilla-central:layout/style/ServoStyleSet.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|1440|0x15
0|12|libxul.so|mozilla::ServoStyleSet::ResolveStyleLazily|hg:hg.mozilla.org/mozilla-central:layout/style/ServoStyleSet.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|647|0x17
0|13|libxul.so|nsComputedDOMStyle::DoGetComputedStyleNoFlush|hg:hg.mozilla.org/mozilla-central:layout/style/nsComputedDOMStyle.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|583|0x9
0|14|libxul.so|nsComputedDOMStyle::UpdateCurrentStyleSources|hg:hg.mozilla.org/mozilla-central:layout/style/nsComputedDOMStyle.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|948|0x23
0|15|libxul.so|nsComputedDOMStyle::Length|hg:hg.mozilla.org/mozilla-central:layout/style/nsComputedDOMStyle.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|418|0x5
0|16|libxul.so|mozilla::dom::CSSStyleDeclarationBinding::get_length|s3:gecko-generated-sources:213d097c282703c6ca40ac697a293169991d65f45523af4e8683662e363a5c36a98f4f1011ee4b233f7b3f74c3f8c849d9b0617ffa62483a01241fbd531bf324/dom/bindings/CSSStyleDeclarationBinding.cpp:|127|0x9
0|17|libxul.so|mozilla::dom::GenericBindingGetter|hg:hg.mozilla.org/mozilla-central:dom/bindings/BindingUtils.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|2905|0x2
0|18|libxul.so|js::CallJSNative|hg:hg.mozilla.org/mozilla-central:js/src/vm/JSContext-inl.h:f0d13136b3580182df241674cf97a3fbf1543c2a|290|0x6
0|19|libxul.so|js::InternalCallOrConstruct|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|467|0xf
0|20|libxul.so|InternalCall|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|516|0xd
0|21|libxul.so|js::Call|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|535|0x5
0|22|libxul.so|js::CallGetter|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|650|0x5
0|23|libxul.so|GetExistingProperty<(js::AllowGC)1u>|hg:hg.mozilla.org/mozilla-central:js/src/vm/NativeObject.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|2155|0x9
0|24|libxul.so|NativeGetPropertyInline<(js::AllowGC)1u>|hg:hg.mozilla.org/mozilla-central:js/src/vm/NativeObject.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|2410|0xf
0|25|libxul.so|JS_ForwardGetPropertyTo|hg:hg.mozilla.org/mozilla-central:js/src/vm/NativeObject.h:f0d13136b3580182df241674cf97a3fbf1543c2a|1629|0x1e
0|26|libxul.so|mozilla::dom::GetPropertyOnPrototype|hg:hg.mozilla.org/mozilla-central:dom/bindings/BindingUtils.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|2098|0x17
0|27|libxul.so|mozilla::dom::CSS2PropertiesBinding::DOMProxyHandler::get|s3:gecko-generated-sources:074406e10bbb250d85b5f79e89696d13898e7d15e0ed01701ef0a8e0614dcefa90b29b58156d8a5cdf20f1253a57b75a79a56ad51cc62b4e095ca9e0fa8cfaf9/dom/bindings/CSS2PropertiesBinding.cpp:|44209|0x1f
0|28|libxul.so|js::Proxy::getInternal|hg:hg.mozilla.org/mozilla-central:js/src/proxy/Proxy.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|351|0x18
0|29|libxul.so|js::Proxy::get|hg:hg.mozilla.org/mozilla-central:js/src/proxy/Proxy.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|361|0xe
0|30|libxul.so|js::GetProperty|hg:hg.mozilla.org/mozilla-central:js/src/vm/NativeObject.h:f0d13136b3580182df241674cf97a3fbf1543c2a|1628|0x2
0|31|libxul.so|js::GetProperty|hg:hg.mozilla.org/mozilla-central:js/src/vm/JSObject.h:f0d13136b3580182df241674cf97a3fbf1543c2a|821|0xf
0|32|libxul.so|Interpret|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|213|0x5
0|33|libxul.so|js::RunScript|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|417|0xb
0|34|libxul.so|js::InternalCallOrConstruct|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|489|0xf
0|35|libxul.so|InternalCall|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|516|0xd
0|36|libxul.so|js::Call|hg:hg.mozilla.org/mozilla-central:js/src/vm/Interpreter.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|535|0x5
0|37|libxul.so|JS::Call|hg:hg.mozilla.org/mozilla-central:js/src/jsapi.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|3011|0x20
0|38|libxul.so|mozilla::dom::EventListener::HandleEvent|s3:gecko-generated-sources:4f12b90540cb165dd19eac1b88402159c76e59990061216cada90a154be8b234c7f9a8578831d6a0eb2b0cf1645daa7d853b12949e597c37d4557860ba4f42ae/dom/bindings/EventListenerBinding.cpp:|47|0x5
0|39|libxul.so|mozilla::dom::EventListener::HandleEvent<mozilla::dom::EventTarget*>|s3:gecko-generated-sources:0502cca494d7ae0441ada14535523caade9340fdd09934cf6d31cc421267c319ae3d6f5b43b2730d0b36ae1c87480f3b426c5fa4fec57d51047d83a51acde602/dist/include/mozilla/dom/EventListenerBinding.h:|66|0x1c
0|40|libxul.so|mozilla::EventListenerManager::HandleEventSubType|hg:hg.mozilla.org/mozilla-central:dom/events/EventListenerManager.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|1087|0x36
0|41|libxul.so|mozilla::EventListenerManager::HandleEventInternal|hg:hg.mozilla.org/mozilla-central:dom/events/EventListenerManager.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|1259|0x19
0|42|libxul.so|mozilla::EventTargetChainItem::HandleEvent|hg:hg.mozilla.org/mozilla-central:dom/events/EventListenerManager.h:f0d13136b3580182df241674cf97a3fbf1543c2a|376|0xa
0|43|libxul.so|mozilla::EventTargetChainItem::HandleEventTargetChain|hg:hg.mozilla.org/mozilla-central:dom/events/EventDispatcher.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|527|0xf
0|44|libxul.so|mozilla::EventDispatcher::Dispatch|hg:hg.mozilla.org/mozilla-central:dom/events/EventDispatcher.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|918|0xb
0|45|libxul.so|nsDocumentViewer::LoadComplete|hg:hg.mozilla.org/mozilla-central:layout/base/nsDocumentViewer.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|1068|0x25
0|46|libxul.so|nsDocShell::EndPageLoad|hg:hg.mozilla.org/mozilla-central:docshell/base/nsDocShell.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|7302|0x11
0|47|libxul.so|nsDocShell::OnStateChange|hg:hg.mozilla.org/mozilla-central:docshell/base/nsDocShell.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|7095|0x18
0|48|libxul.so|nsDocLoader::DoFireOnStateChange|hg:hg.mozilla.org/mozilla-central:uriloader/base/nsDocLoader.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|1315|0x2b
0|49|libxul.so|nsDocLoader::doStopDocumentLoad|hg:hg.mozilla.org/mozilla-central:uriloader/base/nsDocLoader.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|858|0x22
0|50|libxul.so|nsDocLoader::DocLoaderIsEmpty|hg:hg.mozilla.org/mozilla-central:uriloader/base/nsDocLoader.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|747|0xf
0|51|libxul.so|nsDocLoader::OnStopRequest|hg:hg.mozilla.org/mozilla-central:uriloader/base/nsDocLoader.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|632|0x16
0|52|libxul.so|mozilla::net::nsLoadGroup::RemoveRequest|hg:hg.mozilla.org/mozilla-central:netwerk/base/nsLoadGroup.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|629|0x1f
0|53|libxul.so|imgRequestProxy::RemoveFromLoadGroup|hg:hg.mozilla.org/mozilla-central:image/imgRequestProxy.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|446|0x1c
0|54|libxul.so|imgRequestProxy::OnLoadComplete|hg:hg.mozilla.org/mozilla-central:image/imgRequestProxy.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|1131|0x8
0|55|libxul.so|mozilla::image::ImageObserverNotifier<const mozilla::image::ObserverTable*>::operator()<mozilla::image::SyncNotifyInternal(const T&, bool, mozilla::image::Progress, const nsIntRect&) [with T = const mozilla::image::ObserverTable*]::<lambda(mozilla::image::IProgressObserver*)> >|hg:hg.mozilla.org/mozilla-central:image/ProgressTracker.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|370|0x8
0|56|libxul.so|mozilla::image::SyncNotifyInternal<const mozilla::image::ObserverTable*>|hg:hg.mozilla.org/mozilla-central:image/ProgressTracker.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|369|0xb
0|57|libxul.so|mozilla::image::ProgressTracker::SyncNotifyProgress|hg:hg.mozilla.org/mozilla-central:image/ProgressTracker.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|390|0x1e
0|58|libxul.so|mozilla::image::RasterImage::NotifyProgress|hg:hg.mozilla.org/mozilla-central:image/RasterImage.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|1694|0x23
0|59|libxul.so|mozilla::image::RasterImage::NotifyForLoadEvent|hg:hg.mozilla.org/mozilla-central:image/RasterImage.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|977|0xb
0|60|libxul.so|mozilla::image::RasterImage::NotifyDecodeComplete|hg:hg.mozilla.org/mozilla-central:image/RasterImage.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|1781|0x12
0|61|libxul.so|mozilla::detail::RunnableFunction<mozilla::image::IDecodingTask::NotifyDecodeComplete(mozilla::NotNull<mozilla::image::RasterImage*>, mozilla::NotNull<mozilla::image::Decoder*>)::<lambda()> >::Run|hg:hg.mozilla.org/mozilla-central:image/IDecodingTask.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|132|0xf
0|62|libxul.so|nsThread::ProcessNextEvent|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|1096|0x15
0|63|libxul.so|NS_ProcessNextEvent|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThreadUtils.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|519|0x11
0|64|libxul.so|mozilla::ipc::MessagePump::Run|hg:hg.mozilla.org/mozilla-central:ipc/glue/MessagePump.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|97|0xa
0|65|libxul.so|MessageLoop::RunInternal|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:f0d13136b3580182df241674cf97a3fbf1543c2a|326|0x17
0|66|libxul.so|MessageLoop::Run|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:f0d13136b3580182df241674cf97a3fbf1543c2a|319|0x8
0|67|libxul.so|nsBaseAppShell::Run|hg:hg.mozilla.org/mozilla-central:widget/nsBaseAppShell.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|157|0xd
0|68|libxul.so|XRE_RunAppShell|hg:hg.mozilla.org/mozilla-central:toolkit/xre/nsEmbedFunctions.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|893|0x11
0|69|libxul.so|mozilla::ipc::MessagePumpForChildProcess::Run|hg:hg.mozilla.org/mozilla-central:ipc/glue/MessagePump.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|269|0x5
0|70|libxul.so|MessageLoop::RunInternal|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:f0d13136b3580182df241674cf97a3fbf1543c2a|326|0x17
0|71|libxul.so|MessageLoop::Run|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:f0d13136b3580182df241674cf97a3fbf1543c2a|319|0x8
0|72|libxul.so|XRE_InitChildProcess|hg:hg.mozilla.org/mozilla-central:toolkit/xre/nsEmbedFunctions.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|719|0x8
0|73|firefox|content_process_main|hg:hg.mozilla.org/mozilla-central:ipc/contentproc/plugin-container.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|50|0x14
0|74|firefox|main|hg:hg.mozilla.org/mozilla-central:browser/app/nsBrowserApp.cpp:f0d13136b3580182df241674cf97a3fbf1543c2a|280|0x11
0|75|libc-2.23.so||||0x20830
0|76|firefox|MOZ_ReportAssertionFailure|hg:hg.mozilla.org/mozilla-central:mfbt/Assertions.h:f0d13136b3580182df241674cf97a3fbf1543c2a|164|0x5
Flags: in-testsuite?
Flags: needinfo?(emilio)
So this is querying style for an element outside of the document, and we don't bother updating ShadowRoot styles there. We can start doing that I guess... But let's wait for the CSSWG says in https://github.com/w3c/csswg-drafts/issues/1548
Flags: needinfo?(emilio)
Do we have a bug to implement the resolution of that issue that we can mark this one as depending on?  (I guess it's not bug 548397, which is the part of the resolution that we already implement.)
Priority: -- → P3
Turns out that the assertion is invalid regardless.
Assignee: nobody → emilio
https://hg.mozilla.org/mozilla-central/rev/1133ee75e096
Status: NEW → RESOLVED
Closed: Last year
Resolution: --- → FIXED
Target Milestone: --- → mozilla62
Flags: in-testsuite? → in-testsuite+
You need to log in before you can comment on or make changes to this bug.