Closed Bug 1395715 Opened 7 years ago Closed 7 years ago

stylo: Assertion failure: f (Must have found a first-line frame)

Categories

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

defect

Tracking

()

RESOLVED FIXED
mozilla57
Tracking Status
firefox-esr52 --- unaffected
firefox55 --- unaffected
firefox56 --- unaffected
firefox57 --- fixed

People

(Reporter: truber, Assigned: bzbarsky)

References

(Blocks 2 open bugs)

Details

(Keywords: assertion, testcase)

Attachments

(2 files)

Attached file testcase.html (deleted) —
The attached testcase raises an assertion in m-c rev 20170831-fb22415719a9 with stylo enabled by pref.

Assertion failure: f (Must have found a first-line frame), at /builds/worker/workspace/build/src/layout/base/ServoRestyleManager.cpp:1435

#0 mozilla::ServoRestyleManager::ReparentStyleContext, at layout/base/ServoRestyleManager.cpp:1435
#1 nsCSSFrameConstructor::RecoverLetterFrames, at layout/base/nsCSSFrameConstructor.cpp:12307
#2 nsCSSFrameConstructor::ContentRemoved, at layout/base/nsCSSFrameConstructor.cpp:8921
#3 mozilla::PresShell::ContentRemoved, at layout/base/PresShell.cpp:4512
#4 nsNodeUtils::ContentRemoved, at dom/base/nsNodeUtils.cpp:226
#5 nsINode::doRemoveChildAt, at dom/base/nsINode.cpp:1938
#6 mozilla::dom::FragmentOrElement::RemoveChildAt, at dom/base/FragmentOrElement.cpp:1369
#7 nsINode::ReplaceOrInsertBefore, at dom/base/nsINode.cpp:2250
#8 ConvertNodesOrStringsIntoNode, at dom/base/nsINode.h:1843
#9 nsINode::Before, at dom/base/nsINode.cpp:1783
#10 mozilla::dom::CharacterDataBinding::before, at dom/bindings/CharacterDataBinding.cpp:372
#11 mozilla::dom::GenericBindingMethod, at dom/bindings/BindingUtils.cpp:3050
#12 js::CallJSNative, at js/src/jscntxtinlines.h:293
Flags: in-testsuite?
Assignee: nobody → bzbarsky
Flags: needinfo?(bzbarsky)
Priority: -- → P2
It turns out, this is the only case in which we need to do the fixup at all.
And this way we don't have to guess based on first-line styles, which may not
match the frame tree (for example if we have a pending style change that we
haven't processed yet).
Attachment #8903443 - Flags: review?(emilio)
Flags: needinfo?(bzbarsky)
Attachment #8903443 - Flags: review?(emilio) → review+
Pushed by bzbarsky@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/bc499bee82e2
When recovering letter frames, only do first-line fixup when we have a first-line parent.  r=emilio
https://hg.mozilla.org/mozilla-central/rev/bc499bee82e2
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla57
Flags: in-testsuite? → in-testsuite+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: