Changeset 277193 in webkit
- Timestamp:
- May 7, 2021, 11:48:46 AM (5 years ago)
- Location:
- branches/safari-611-branch
- Files:
-
- 2 added
- 3 edited
-
LayoutTests/ChangeLog (modified) (1 diff)
-
LayoutTests/fullscreen/full-screen-crash-custom-scrollbars-expected.txt (added)
-
LayoutTests/fullscreen/full-screen-crash-custom-scrollbars.html (added)
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/rendering/RenderLayer.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
branches/safari-611-branch/LayoutTests/ChangeLog
r277192 r277193 1 2021-05-07 Russell Epstein <repstein@apple.com> 2 3 Cherry-pick r276739. rdar://problem/77581103 4 5 Don't create custom scrollbars for fullscreen placeholders. 6 https://bugs.webkit.org/show_bug.cgi?id=225141 7 Source/WebCore: 8 9 <rdar://64800098> 10 11 Reviewed by Darin Adler. 12 13 We can end up calling RenderScrollbar::createCustomScrollbar with 14 `element = nullptr` from RenderLayer::createScrollbar, 15 when the renderer is a RenderFullscreenPlaceholder. 16 17 We don't need to bother with scrollbars for the placeholder, so check to 18 make sure we have a valid element before creating custom scollbars. 19 20 Test: fullscreen/full-screen-crash-custom-scrollbars.html 21 22 * rendering/RenderLayer.cpp: 23 (WebCore::RenderLayer::createScrollbar): 24 25 LayoutTests: 26 27 Reviewed by Darin Adler. 28 29 * fullscreen/full-screen-crash-custom-scrollbars-expected.txt: Added. 30 * fullscreen/full-screen-crash-custom-scrollbars.html: Added. 31 32 git-svn-id: https://svn.webkit.org/repository/webkit/trunk@276739 268f45cc-cd09-0410-ab3c-d52691b4dbfc 33 34 2021-04-28 Cameron McCormack <heycam@apple.com> 35 36 Don't create custom scrollbars for fullscreen placeholders. 37 https://bugs.webkit.org/show_bug.cgi?id=225141 38 39 Reviewed by Darin Adler. 40 41 * fullscreen/full-screen-crash-custom-scrollbars-expected.txt: Added. 42 * fullscreen/full-screen-crash-custom-scrollbars.html: Added. 43 1 44 2021-05-07 Russell Epstein <repstein@apple.com> 2 45 -
branches/safari-611-branch/Source/WebCore/ChangeLog
r277192 r277193 1 2021-05-07 Russell Epstein <repstein@apple.com> 2 3 Cherry-pick r276739. rdar://problem/77581103 4 5 Don't create custom scrollbars for fullscreen placeholders. 6 https://bugs.webkit.org/show_bug.cgi?id=225141 7 Source/WebCore: 8 9 <rdar://64800098> 10 11 Reviewed by Darin Adler. 12 13 We can end up calling RenderScrollbar::createCustomScrollbar with 14 `element = nullptr` from RenderLayer::createScrollbar, 15 when the renderer is a RenderFullscreenPlaceholder. 16 17 We don't need to bother with scrollbars for the placeholder, so check to 18 make sure we have a valid element before creating custom scollbars. 19 20 Test: fullscreen/full-screen-crash-custom-scrollbars.html 21 22 * rendering/RenderLayer.cpp: 23 (WebCore::RenderLayer::createScrollbar): 24 25 LayoutTests: 26 27 Reviewed by Darin Adler. 28 29 * fullscreen/full-screen-crash-custom-scrollbars-expected.txt: Added. 30 * fullscreen/full-screen-crash-custom-scrollbars.html: Added. 31 32 git-svn-id: https://svn.webkit.org/repository/webkit/trunk@276739 268f45cc-cd09-0410-ab3c-d52691b4dbfc 33 34 2021-04-28 Cameron McCormack <heycam@apple.com> 35 36 Don't create custom scrollbars for fullscreen placeholders. 37 https://bugs.webkit.org/show_bug.cgi?id=225141 38 <rdar://64800098> 39 40 Reviewed by Darin Adler. 41 42 We can end up calling RenderScrollbar::createCustomScrollbar with 43 `element = nullptr` from RenderLayerScrollableArea::createScrollbar, 44 when the renderer is a RenderFullscreenPlaceholder. 45 46 We don't need to bother with scrollbars for the placeholder, so check to 47 make sure we have a valid element before creating custom scollbars. 48 49 Test: fullscreen/full-screen-crash-custom-scrollbars.html 50 51 * rendering/RenderLayerScrollableArea.cpp: 52 (WebCore::RenderLayerScrollableArea::createScrollbar): 53 1 54 2021-05-07 Russell Epstein <repstein@apple.com> 2 55 -
branches/safari-611-branch/Source/WebCore/rendering/RenderLayer.cpp
r270850 r277193 3510 3510 auto& actualRenderer = *rendererForScrollbar(renderer()); 3511 3511 bool hasCustomScrollbarStyle = is<RenderBox>(actualRenderer) && downcast<RenderBox>(actualRenderer).style().hasPseudoStyle(PseudoId::Scrollbar); 3512 if (hasCustomScrollbarStyle) 3513 widget = RenderScrollbar::createCustomScrollbar(*this, orientation, downcast<RenderBox>(actualRenderer).element()); 3512 auto element = downcast<RenderBox>(actualRenderer).element(); 3513 if (hasCustomScrollbarStyle && element) 3514 widget = RenderScrollbar::createCustomScrollbar(*this, orientation, element); 3514 3515 else { 3515 3516 widget = Scrollbar::createNativeScrollbar(*this, orientation, ScrollbarControlSize::Regular);
Note:
See TracChangeset
for help on using the changeset viewer.