Commit 91998d20 authored by Rune Lillesveen's avatar Rune Lillesveen Committed by Commit Bot

Don't retain next_sibling being re-attached or skipped.

We ended keeping a deleted LayoutObject as part of whitespace re-
attachement because the previous next_sibling was detached at the next
iteration. Reset the next_sibling for each iteration.

I have not been able to reproduce the issue locally with the clusterfuzz
cases, and not figured out how to construct a case which causes this to
happen, so this is a speculative fix.

Bug: 977616
Change-Id: I31c840096897b757aaeccb3d8085ad57cf6b3060
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1674019Reviewed-by: default avatarAnders Hartvoll Ruud <andruud@chromium.org>
Commit-Queue: Rune Lillesveen <futhark@chromium.org>
Cr-Commit-Position: refs/heads/master@{#671810}
parent 535d8e87
......@@ -139,6 +139,8 @@ void WhitespaceAttacher::ReattachWhitespaceSiblings(
!sibling_layout_object->IsFloatingOrOutOfFlowPositioned()) {
break;
}
context.next_sibling_valid = false;
context.next_sibling = nullptr;
}
SetLastTextNode(nullptr);
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment