Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(406)

Issue 2365173002: Detach PaintLayerScrollableArea from RootFrameViewport when disposed. (Closed)

Created:
4 years, 2 months ago by bokan
Modified:
4 years, 2 months ago
Reviewers:
dtapuska
CC:
chromium-reviews, blink-reviews, dshwang, slimming-paint-reviews_chromium.org, blink-reviews-paint_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Detach PaintLayerScrollableArea from RootFrameViewport when disposed. With document.rootScroller, a PLSA can become the layoutViewport in RootFrameViewport. This crash was happening because the associated Node being removed from the DOM causes deletion of the associated LayoutObject and PaintLayer but the RootFrameViewport still has a pointer to the PLSA. The RootScrollerController will realize the rootScroller's LayoutObject is gone during the next layout but we can call into the dead PLSA (which could have been garbage collected in the mean time). This fix checks during PLSA disposal whether it's registered as the layout viewport, and if so, resets the layout viewport to the FrameView. BUG=649340 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Committed: https://crrev.com/10a29c5ef01177b72535c855713df141a9ef9ddc Cr-Commit-Position: refs/heads/master@{#422209}

Patch Set 1 #

Patch Set 2 : None #

Patch Set 3 : None #

Total comments: 1

Patch Set 4 : Fixed ASAN failure in previous patch #

Unified diffs Side-by-side diffs Delta from patch set Stats (+65 lines, -1 line) Patch
M third_party/WebKit/Source/core/page/scrolling/RootScrollerController.h View 1 2 chunks +5 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/page/scrolling/RootScrollerController.cpp View 1 2 3 2 chunks +17 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.h View 1 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp View 1 3 chunks +5 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/web/tests/RootScrollerTest.cpp View 1 2 chunks +37 lines, -0 lines 0 comments Download

Messages

Total messages: 23 (12 generated)
bokan
https://codereview.chromium.org/2365173002/diff/40001/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.h File third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.h (right): https://codereview.chromium.org/2365173002/diff/40001/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.h#newcode50 third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.h:50: #include "core/page/scrolling/StickyPositionScrollingConstraints.h" Unrelated but I noticed this is needed ...
4 years, 2 months ago (2016-09-25 15:56:44 UTC) #4
dtapuska
On 2016/09/25 15:56:44, bokan (OOO Sept 26-28) wrote: > https://codereview.chromium.org/2365173002/diff/40001/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.h > File third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.h (right): > ...
4 years, 2 months ago (2016-09-26 13:51:55 UTC) #9
bokan
On 2016/09/26 13:51:55, dtapuska wrote: > On 2016/09/25 15:56:44, bokan (OOO Sept 26-28) wrote: > ...
4 years, 2 months ago (2016-09-26 15:05:06 UTC) #10
bokan
On 2016/09/26 15:05:06, bokan (OOO Sept 26-28) wrote: > On 2016/09/26 13:51:55, dtapuska wrote: > ...
4 years, 2 months ago (2016-09-29 15:17:02 UTC) #11
bokan
ping
4 years, 2 months ago (2016-09-30 16:26:11 UTC) #12
dtapuska
lgtm
4 years, 2 months ago (2016-09-30 16:29:20 UTC) #13
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2365173002/60001
4 years, 2 months ago (2016-09-30 16:30:08 UTC) #15
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/302928)
4 years, 2 months ago (2016-09-30 19:05:44 UTC) #17
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2365173002/60001
4 years, 2 months ago (2016-09-30 19:06:45 UTC) #19
commit-bot: I haz the power
Committed patchset #4 (id:60001)
4 years, 2 months ago (2016-09-30 20:35:34 UTC) #21
commit-bot: I haz the power
4 years, 2 months ago (2016-09-30 20:40:29 UTC) #23
Message was sent while issue was closed.
Patchset 4 (id:??) landed as
https://crrev.com/10a29c5ef01177b72535c855713df141a9ef9ddc
Cr-Commit-Position: refs/heads/master@{#422209}

Powered by Google App Engine
This is Rietveld 408576698