Closed
Bug 1379895
Opened 7 years ago
Closed 7 years ago
stylo: Crash in mozalloc_abort | abort | core::result::unwrap_failed<T> | style::properties::longhands::system_font::{{impl}}::to_computed_value
Categories
(Core :: CSS Parsing and Computation, defect, P1)
Tracking
()
RESOLVED
FIXED
mozilla56
Tracking | Status | |
---|---|---|
firefox-esr52 | --- | unaffected |
firefox54 | --- | unaffected |
firefox55 | --- | unaffected |
firefox56 | --- | fixed |
People
(Reporter: cpeterson, Assigned: manishearth)
References
(Blocks 1 open bug)
Details
(Keywords: crash)
Crash Data
This bug was filed from the Socorro interface and is
report bp-6bf9bef3-8cb6-448f-85ca-bf4940170709.
=============================================================
1 crash in Nightly 56
Reporter | ||
Updated•7 years ago
|
Blocks: stylo-site-issues
Comment 1•7 years ago
|
||
unwrap_failed from system_font::to_computed_value? That's fun... I don't see any Result type inside that function directly. It is annoying that there is no crash message. My first guess would be that system.weight ends up being a number which isn't a multiple of 100, which triggers the unwrap-ish in font_weight::computed_value::T::from_gecko_weight.
We may want to remove that .expect or round it to a multiple of 100 for now.
Comment 2•7 years ago
|
||
(In reply to Xidorn Quan [:xidorn] UTC+10 from comment #1)
> unwrap_failed from system_font::to_computed_value? That's fun... I don't see
> any Result type inside that function directly. It is annoying that there is
> no crash message. My first guess would be that system.weight ends up being a
> number which isn't a multiple of 100, which triggers the unwrap-ish in
> font_weight::computed_value::T::from_gecko_weight.
>
> We may want to remove that .expect or round it to a multiple of 100 for now.
That's an expect() though, right? That shouldn't have this crash signature...
Comment 3•7 years ago
|
||
There were 9 crashes in the past month on a single install, and only on 20170709100223.
Given that nothing actionable here... let's close it?
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → WORKSFORME
Comment 4•7 years ago
|
||
This actually appears to be the highest-volume crasher (by far) in stylo code over the last few days:
https://crash-stats.mozilla.com/search/?telemetry_environment=~layout.css.servo.enabled&signature=~Gecko_&signature=~Servo_&signature=~geckoservo&signature=~style%3A%3A&build_id=%3E%3D20170721000000&product=Firefox&version=56.0a1&date=%3E%3D2017-07-17T18%3A38%3A00.000Z&date=%3C2017-07-24T18%3A38%3A00.000Z&_sort=-date&_facets=signature&_columns=date&_columns=signature&_columns=product&_columns=version&_columns=build_id&_columns=platform#facet-signature
Assignee | ||
Comment 5•7 years ago
|
||
Yeah, someone reported this on Reddit too.
I'm going to look into this today.
Assignee: nobody → manishearth
Status: RESOLVED → REOPENED
Resolution: WORKSFORME → ---
Comment 6•7 years ago
|
||
The MOZ_CRASH Reason field shows "from_gecko_weight: called with invalid weight: ()", which matches my guess in comment 1. So I think the issue here is that the system font has a weird font weight. Also, all of this crash happens on Linux, which could be a good side evidence because Linux users tend to have unusual system settings.
I guess we can fix this via not requiring font weight to be multiple of 100 at some places. We would need to remove that restriction eventually, so I guess it isn't a big deal.
Assignee | ||
Comment 7•7 years ago
|
||
Looks like on linux Pango has font-weight values ultraheavy (1000), semilight (350), and book (380). Any of these can trigger the assert.
I'm going to allow weird positive font weight values to exist but not be specifiable.
Assignee | ||
Comment 8•7 years ago
|
||
Assignee | ||
Comment 9•7 years ago
|
||
Status: REOPENED → RESOLVED
Closed: 7 years ago → 7 years ago
Resolution: --- → FIXED
Updated•7 years ago
|
Target Milestone: --- → mozilla56
Updated•7 years ago
|
status-firefox54:
--- → unaffected
status-firefox55:
--- → unaffected
status-firefox-esr52:
--- → unaffected
You need to log in
before you can comment on or make changes to this bug.
Description
•