New issue
Advanced search Search tips

Issue 846449 link

Starred by 2 users

Issue metadata

Status: Verified
Owner:
Closed: May 2018
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows
Pri: 1
Type: Bug

Blocking:
issue 776656



Sign in to add a comment

Null-dereference READ in blink::Node::LazyReattachIfAttached

Project Member Reported by ClusterFuzz, May 24 2018

Issue description

Detailed report: https://clusterfuzz.com/testcase?key=4656836884824064

Fuzzer: marty_html_twiddler
Job Type: linux_ubsan_vptr_content_shell_drt
Platform Id: linux

Crash Type: Null-dereference READ
Crash Address: 0x000000000000
Crash State:
  blink::Node::LazyReattachIfAttached
  blink::HTMLSlotElement::DetachLayoutTree
  blink::ContainerNode::DetachLayoutTree
  
Sanitizer: undefined (UBSAN)

Regressed: https://clusterfuzz.com/revisions?job=linux_ubsan_vptr_content_shell_drt&range=561370:561371

Reproducer Testcase: https://clusterfuzz.com/download?testcase_id=4656836884824064

Issue filed automatically.

See https://github.com/google/clusterfuzz-tools for more information.
 
Project Member

Comment 1 by ClusterFuzz, May 24 2018

Components: Blink>DOM Blink>HTML
Labels: Test-Predator-Auto-Components
Automatically applying components based on crash stacktrace and information from OWNERS files.

If this is incorrect, please apply the Test-Predator-Wrong-Components label.
Project Member

Comment 2 by ClusterFuzz, May 24 2018

Labels: Test-Predator-Auto-Owner
Owner: hayato@chromium.org
Status: Assigned (was: Untriaged)
Automatically assigning owner based on suspected regression changelist https://chromium.googlesource.com/chromium/src/+/79925868d14e19bb4bfb38d09bdd6565c8f4c9a1 (Don't recalc assignement in HTMLSlotElement::DetachLayoutTree).

If this is incorrect, please let us know why and apply the Test-Predator-Wrong-CLs label. If you aren't the correct owner for this issue, please unassign yourself as soon as possible so it can be re-triaged.

Comment 3 by hayato@chromium.org, May 25 2018

Blocking: 776656

Comment 4 by hayato@chromium.org, May 25 2018

Components: -Blink>HTML
Status: Started (was: Assigned)

Comment 5 by hayato@chromium.org, May 25 2018

 Issue 846458  has been merged into this issue.
Project Member

Comment 6 by ClusterFuzz, May 26 2018

Labels: OS-Windows
Project Member

Comment 7 by bugdroid1@chromium.org, May 28 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2ff81cbf1dab9e224f3252be810c820c480e4922

commit 2ff81cbf1dab9e224f3252be810c820c480e4922
Author: Hayato Ito <hayato@chromium.org>
Date: Mon May 28 03:16:54 2018

Check all pending slot assignment recalc in a tree of trees, instead of a shadow tree

Fix the crash reported by cluster fuzz ( https://crbug.com/846449 ).

The fix of https://crrev.com/c/1068646 was not enough. We need to check all pending slot
assignment recalc in a tree of trees because an enclosing list of a list item can be
in another node tree.

Bug:  776656 , 846449 
Change-Id: I559e9f7fbe6c7cd8a54ac9ab3e7e3faec5d4294c
Reviewed-on: https://chromium-review.googlesource.com/1073211
Commit-Queue: Hayato Ito <hayato@chromium.org>
Reviewed-by: Yoshifumi Inoue <yosin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#562174}
[add] https://crrev.com/2ff81cbf1dab9e224f3252be810c820c480e4922/third_party/WebKit/LayoutTests/shadow-dom/crashes/list-item-delete-crash.html
[modify] https://crrev.com/2ff81cbf1dab9e224f3252be810c820c480e4922/third_party/blink/renderer/core/dom/document.cc
[modify] https://crrev.com/2ff81cbf1dab9e224f3252be810c820c480e4922/third_party/blink/renderer/core/dom/document.h
[modify] https://crrev.com/2ff81cbf1dab9e224f3252be810c820c480e4922/third_party/blink/renderer/core/dom/ng/slot_assignment_engine.h
[modify] https://crrev.com/2ff81cbf1dab9e224f3252be810c820c480e4922/third_party/blink/renderer/core/dom/node.cc
[modify] https://crrev.com/2ff81cbf1dab9e224f3252be810c820c480e4922/third_party/blink/renderer/core/dom/node.h
[modify] https://crrev.com/2ff81cbf1dab9e224f3252be810c820c480e4922/third_party/blink/renderer/core/html/list_item_ordinal.cc

Comment 8 by hayato@chromium.org, May 28 2018

Status: Fixed (was: Started)
Project Member

Comment 9 by ClusterFuzz, May 28 2018

ClusterFuzz has detected this issue as fixed in range 562173:562174.

Detailed report: https://clusterfuzz.com/testcase?key=4656836884824064

Fuzzer: marty_html_twiddler
Job Type: linux_ubsan_vptr_content_shell_drt
Platform Id: linux

Crash Type: Null-dereference READ
Crash Address: 0x000000000000
Crash State:
  blink::Node::LazyReattachIfAttached
  blink::HTMLSlotElement::DetachLayoutTree
  blink::ContainerNode::DetachLayoutTree
  
Sanitizer: undefined (UBSAN)

Regressed: https://clusterfuzz.com/revisions?job=linux_ubsan_vptr_content_shell_drt&range=561370:561371
Fixed: https://clusterfuzz.com/revisions?job=linux_ubsan_vptr_content_shell_drt&range=562173:562174

Reproducer Testcase: https://clusterfuzz.com/download?testcase_id=4656836884824064

See https://github.com/google/clusterfuzz-tools for more information.

If you suspect that the result above is incorrect, try re-doing that job on the test case report page.
Project Member

Comment 10 by ClusterFuzz, May 28 2018

Labels: ClusterFuzz-Verified
Status: Verified (was: Fixed)
ClusterFuzz testcase 4656836884824064 is verified as fixed, so closing issue as verified.

If this is incorrect, please add ClusterFuzz-Wrong label and re-open the issue.
Requested merge to 68 over on  issue 847012 
Merge to 68 has been approved over on  issue 847012  - mind doing the honours 	hayato@?
We don't need to merge this to M68.
This fix makes sense only if IncrementalShadowDOM flag is enabled.
The flag is not enabled on M68.

Sign in to add a comment