Closed Bug 1418856 Opened 2 years ago Closed 2 years ago

stylo: Crash in style::style_resolver::StyleResolverForElement<T>::match_primary<T>: "called `Option::unwrap()` on a `None` value"


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

Windows 10



Tracking Status
firefox-esr52 --- unaffected
firefox57 --- affected
firefox58 --- affected
firefox59 --- affected


(Reporter: njn, Unassigned)


(Blocks 1 open bug)


(Keywords: crash)

Crash Data

This bug was filed from the Socorro interface and is
report bp-16502b9f-ac6f-4661-ab05-ee41b0171118.

Top 10 frames of crashing thread:

0 xul.dll std::panicking::rust_panic_with_hook src/libstd/
1 xul.dll std::panicking::begin_panic&lt;alloc::string::String&gt; src/libstd/
2 xul.dll std::panicking::begin_panic_fmt src/libstd/
3 xul.dll core::panicking::panic_fmt src/libcore/
4 xul.dll core::panicking::panic src/libcore/
5 xul.dll style::style_resolver::StyleResolverForElement&lt;style::gecko::wrapper::GeckoElement&gt;::match_primary&lt;style::gecko::wrapper::GeckoElement&gt; servo/components/style/
6 xul.dll style::style_resolver::StyleResolverForElement&lt;style::gecko::wrapper::GeckoElement&gt;::resolve_style&lt;style::gecko::wrapper::GeckoElement&gt; servo/components/style/
7 xul.dll style::traversal::compute_style&lt;style::gecko::wrapper::GeckoElement&gt; servo/components/style/
8 xul.dll geckoservo::glue::traverse_subtree servo/ports/geckolib/
9 xul.dll geckoservo::glue::Servo_TraverseSubtree servo/ports/geckolib/


This is the #12 Windows topcrash in Nightly 20171117222953. Emilio, can you take a look?
Flags: needinfo?(emilio)
So the line information from the stacks makes no sense, but happens to be the same as for the crashtest of bug 1411008, so I'm gonna go and suspect that it's the same kind of issue:

I have absolutely no clue of what kind of brokenness is causing this unwrap to fail (in that crashtest it's obvious, but I have no clue how that would be hit under Servo_TraverseSubtre, which is a normal style flush), but I can try to get more info...
See Also: → 1411008 adds the extra debugging info, so I'd expect this signature to change... Nick, what's the best way to make sure the new crashes somehow arrive here (or at least that I'm CCd on them?).
Flags: needinfo?(n.nethercote)
The new crash reports will probably have the same signature.

In a day or two, I suggest looking at the crash reports for the first build that has the change at
Flags: needinfo?(n.nethercote)
Firefox 57 and 58 are also affected, but the crash volume is very low.
Summary: [stylo] Crash in style::style_resolver::StyleResolverForElement<T>::match_primary<T>: "called `Option::unwrap()` on a `None` value" → stylo: Crash in style::style_resolver::StyleResolverForElement<T>::match_primary<T>: "called `Option::unwrap()` on a `None` value"
Priority: -- → P3
I don't see this signature in the last few days.
I don't see any report with buildid >= 20171120142222. Should I call this WFM Nick? Or do you think it's worth waiting a few more days? This is likely the same root cause as the animation crashes that have been fixed recently.
Flags: needinfo?(emilio) → needinfo?(n.nethercote)
Seems like it's gone. We can always reopen if it comes back.
Closed: 2 years ago
Flags: needinfo?(n.nethercote)
Resolution: --- → WORKSFORME
I think this is a dupe of fuzz bug 1411008, which includes a test case.
Duplicate of bug: 1411008
You need to log in before you can comment on or make changes to this bug.