!node.needsStyleRecalc() in Document.cpp |
||||||
Issue descriptionDetailed report: https://cluster-fuzz.appspot.com/testcase?key=5737243543339008 Fuzzer: bj_broddelwerk Job Type: linux_debug_chrome Platform Id: linux Crash Type: CHECK failure Crash Address: Crash State: !node.needsStyleRecalc() in Document.cpp blink::assertLayoutTreeUpdated blink::Document::updateStyleAndLayoutTree Regressed: https://cluster-fuzz.appspot.com/revisions?job=linux_debug_chrome&range=335195:335234 Minimized Testcase (0.84 Kb): https://cluster-fuzz.appspot.com/download/AMIfv97GiKnv3TrbPPlUyPEVMOwqFgC-uLY8BwaV_Wc-anW4vU-etr5myj13y-t8LOar2FRcUFLPhKWU9iGEQVcoojg24wgT993rBmo_41owifz1meulIwOsxMPSyiv5mLwjmNija6QqKCCbF5uCVaqPl44HMJmtvQ?testcase_id=5737243543339008 Issue manually filed by: ranjitkan See https://dev.chromium.org/Home/chromium-security/bugs/reproducing-clusterfuzz-bugs for more information.
,
Oct 5 2016
If you look at the Blink changes in that range, you see that assertLayoutTreeUpdate was introduced by esprehn@ in that range, so it's not a regression.
,
Oct 5 2016
The clusterfuzz case is able to add two child elements of Document. Since that should not be allowed, we start recalculating style on documentElement() which means the second element will not have its style recalculated. assertLayoutTreeUpdated starts on the Document node and checks all children and therefore finds the dirty second child. I assume the DOM code should've made sure there's only one documentElement.
,
Oct 5 2016
,
Oct 6 2016
These kind of bugs are sadly not uncommon; typically checkAllowsChild is confused by some synchronous script running somewhere. The solution is typically beating back the brushfire of synchronous stuff, or widening the firebreak with "duplicate" later checks.
,
Nov 22 2016
Removing EditIssue view restrictions from ClusterFuzz filed bugs. If you believe that this issue should still be restricted, please reapply the label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Mar 11 2017
ClusterFuzz has detected this issue as fixed in range 455565:456161. Detailed report: https://clusterfuzz.com/testcase?key=5737243543339008 Fuzzer: bj_broddelwerk Job Type: linux_debug_chrome Platform Id: linux Crash Type: CHECK failure Crash Address: Crash State: !node.needsStyleRecalc() in Document.cpp blink::assertLayoutTreeUpdated blink::Document::updateStyleAndLayoutTree Sanitizer: address (ASAN) Regressed: https://clusterfuzz.com/revisions?job=linux_debug_chrome&range=335195:335234 Fixed: https://clusterfuzz.com/revisions?job=linux_debug_chrome&range=455565:456161 Reproducer Testcase: https://clusterfuzz.com/download/AMIfv97GiKnv3TrbPPlUyPEVMOwqFgC-uLY8BwaV_Wc-anW4vU-etr5myj13y-t8LOar2FRcUFLPhKWU9iGEQVcoojg24wgT993rBmo_41owifz1meulIwOsxMPSyiv5mLwjmNija6QqKCCbF5uCVaqPl44HMJmtvQ?testcase_id=5737243543339008 See https://dev.chromium.org/Home/chromium-security/bugs/reproducing-clusterfuzz-bugs for more information. If you suspect that the result above is incorrect, try re-doing that job on the test case report page.
,
Mar 11 2017
ClusterFuzz testcase 5737243543339008 is verified as fixed, so closing issue. If this is incorrect, please add ClusterFuzz-Wrong label and re-open the issue. |
||||||
►
Sign in to add a comment |
||||||
Comment 1 by ranjitkan@chromium.org
, Oct 4 2016Components: Tools>Test>FindIt>NoResult
Labels: -Pri-1 -Type-Bug findit-wrong M-55 Te-Logged Pri-2 Type-Bug-Regression
Owner: r...@opera.com
Status: Assigned (was: Untriaged)