-
Aaron Leventhal authored
Fix cases where AnyDescendantWasReparented() fails to notice a reparenting occurrence, because it stops recursing when there is an unignored node. This is correct; however, sometimes it thinks something is unignored when it's really ignored, because there are two places to look for this info -- currently it only looks to see if the node was ignored at the end of the previous serialization, but it also needs to check if the node has recently become ignored. In release builds, these illegal reparenting crashes cause a Reset(), which is a fail safe, but also indicates there's an inconsistency, leads to performance problems and causes virtual buffer resets. Cleaning up these types of issues over time will improve stability, performance and predictability. Bug: 1141720,1141916 Change-Id: I4e1d065df08c2bf642561618b435fc7a987eafc1 Cq-Do-Not-Cancel-Tryjobs: true Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2504194 Commit-Queue: Aaron Leventhal <aleventhal@chromium.org> Reviewed-by:
Dominic Mazzoni <dmazzoni@chromium.org> Cr-Commit-Position: refs/heads/master@{#821908}
aa46d57a