Bug 1469354: Use the first continuation to get the layout parent style. r=mats

Continuations do not have placeholders. There's a bunch of code that already
deals with that in other places in the tree.

MozReview-Commit-ID: Htizql7692e
This commit is contained in:
Emilio Cobos Álvarez 2018-06-22 00:52:15 +02:00
parent 7815b4e5f6
commit 27ef769d59
3 changed files with 18 additions and 1 deletions

View File

@ -3473,7 +3473,7 @@ RestyleManager::DoReparentComputedStyleForFirstLine(nsIFrame* aFrame,
// to be careful to do that with our placeholder, not with us, if we're out of
// flow.
if (aFrame->HasAnyStateBits(NS_FRAME_OUT_OF_FLOW)) {
aFrame->GetPlaceholderFrame()->GetLayoutParentStyleForOutOfFlow(&providerFrame);
aFrame->FirstContinuation()->GetPlaceholderFrame()->GetLayoutParentStyleForOutOfFlow(&providerFrame);
} else {
providerFrame = nsFrame::CorrectStyleParentFrame(aFrame->GetParent(),
oldStyle->GetPseudo());

View File

@ -0,0 +1,16 @@
<style>
:root { columns: 0px }
hr::first-line {}
li { display: contents }
</style>
<script>
function go() {
a.appendChild(c);
c.appendChild(b);
b.style.setProperty("float", "left");
}
</script>
<svg onload="go()">
<hr id="a">
<dd id="b">
<li id="c">%

View File

@ -542,3 +542,4 @@ load 1463940.html
pref(dom.webcomponents.shadowdom.enabled,true) HTTP load 1464641.html
load 1464737.html
load 1467964.html
load 1469354.html