CompositeEditCommand::MoveParagraphWithClones should handle |before_paragraph| becoming disconnected |
||||||
Issue descriptionDetailed report: https://clusterfuzz.com/testcase?key=4581607202881536 Fuzzer: bj_broddelwerk Job Type: mac_asan_chrome Platform Id: mac Crash Type: UNKNOWN READ Crash Address: 0x000000000010 Crash State: blink::PositionIteratorAlgorithm<blink::EditingAlgorithm<blink::NodeTraversal> > blink::MostBackwardCaretPosition blink::CanonicalPositionOf Sanitizer: address (ASAN) Regressed: https://clusterfuzz.com/revisions?job=mac_asan_chrome&range=454233:454289 Reproducer Testcase: https://clusterfuzz.com/download/AMIfv969uNHF88MdQ7TkK9Cph-ytp25tiTTYKbD2VbpPloiSGtiPpLJmwVJpU3lQR9KjQ9lB_mWUczEsqkd5rWOUHCZRC7iRKFKGrEtscnvboQVN9W81ycnSS6-qs7kDH30ajqQkMo77u_smjy_O7wdDkxDIzDw5Vs0t-LMKJeraJQ2-R0MGoa3AqmUoUycXwcQb6-jZf_rVsiT7i-3__4FsCZ3dHzMTKQzV7OJrR-PimTPtRECnAXCnR7Er1dl6lOlChANogrsygJNbaE_PV9EYsqlYGZGOOs4vJlfFhlTqKGtzzlXJrO7lpNvZQ59eR9o7f3xCdEHXXR3PWScNYyCu80PVnO_pVvTLfNC2FULU2Ai4HVdIMy0?testcase_id=4581607202881536 Issue filed automatically. See https://dev.chromium.org/Home/chromium-security/bugs/reproducing-clusterfuzz-bugs for more information.
,
Apr 27 2017
,
Apr 27 2017
Lower to Pri-2, since this issue caused by unusual HTML.
,
Apr 29 2017
Minimized repro:
<!doctype html>
<div contenteditable>
<h6>
<button id=button><table></table></button>
</h6>
<object id=object></object>
</div>
<script>
getSelection().setBaseAndExtent(button, 0, object, 0);
document.execCommand('indent');
</script>
Check failed: position_with_affinity.IsConnected(). BUTTON@offsetInAnchor[0]/TextAffinity::Downstream
,
Apr 29 2017
,
Apr 29 2017
,
May 1 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a4e8fc5aeabab79dd84a7ced4b7c433a428864a5 commit a4e8fc5aeabab79dd84a7ced4b7c433a428864a5 Author: xiaochengh <xiaochengh@chromium.org> Date: Mon May 01 04:11:13 2017 Use RelocatablePosition in CompositeEditCommand::MoveParagraphWithClones Clusterfuzz found a sample where CompositeEditCommand::MoveParagraphWithClones() moves |before_paragraph| out of the DOM tree after moving the paragraph. This patch uses RelocatablePosition to track |before_paragraph| and |after_paragraph| so that the positions we track are always connected. Note: CompositeEditCommand::MoveParagraphs() is already using RelocatablePosition to track positions before and after the moved paragraphs. BUG= 712510 TEST=ApplyBlockElementCommandTest.IndentHeadingIntoBlockquote Review-Url: https://codereview.chromium.org/2850773003 Cr-Commit-Position: refs/heads/master@{#468278} [modify] https://crrev.com/a4e8fc5aeabab79dd84a7ced4b7c433a428864a5/third_party/WebKit/Source/core/editing/commands/ApplyBlockElementCommandTest.cpp [modify] https://crrev.com/a4e8fc5aeabab79dd84a7ced4b7c433a428864a5/third_party/WebKit/Source/core/editing/commands/CompositeEditCommand.cpp
,
May 1 2017
ClusterFuzz has detected this issue as fixed in range 468274:468284. Detailed report: https://clusterfuzz.com/testcase?key=4581607202881536 Fuzzer: bj_broddelwerk Job Type: mac_asan_chrome Platform Id: mac Crash Type: UNKNOWN READ Crash Address: 0x000000000010 Crash State: blink::PositionIteratorAlgorithm<blink::EditingAlgorithm<blink::NodeTraversal> > blink::MostBackwardCaretPosition blink::CanonicalPositionOf Sanitizer: address (ASAN) Regressed: https://clusterfuzz.com/revisions?job=mac_asan_chrome&range=454233:454289 Fixed: https://clusterfuzz.com/revisions?job=mac_asan_chrome&range=468274:468284 Reproducer Testcase: https://clusterfuzz.com/download?testcase_id=4581607202881536 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.
,
May 1 2017
ClusterFuzz testcase 4581607202881536 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 msrchandra@chromium.org
, Apr 18 2017Components: Blink>Editing
Labels: Test-Predator-Correct-CLs M-58
Owner: yosin@chromium.org
Status: Assigned (was: Untriaged)