Closed Bug 1449243 Opened 2 years ago Closed 2 years ago

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

Categories

(Core :: CSS Parsing and Computation, defect, P3)

59 Branch
defect

Tracking

()

RESOLVED FIXED
mozilla62
Tracking Status
firefox-esr52 --- unaffected
firefox-esr60 --- unaffected
firefox60 --- unaffected
firefox61 --- wontfix
firefox62 --- fixed

People

(Reporter: jkratzer, Assigned: emilio)

References

(Blocks 1 open bug)

Details

(Keywords: assertion, testcase)

Attachments

(1 file)

Attached 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: 2 years ago
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.