Title: [272728] trunk/Source/WebKit
Revision
272728
Author
[email protected]
Date
2021-02-11 08:09:10 -0800 (Thu, 11 Feb 2021)

Log Message

Crash when UI-side compositing is enabled on macOS
https://bugs.webkit.org/show_bug.cgi?id=221740

Reviewed by Tim Horton.

When UI-side compositing is enabled on macOS, WebProcess::updatePageScreenProperties()
crashes because allOf(m_pageMap.values(), ...) return a null WebPage. We're inside
WebProcess::createWebPage() here, so haven't set the HashMap value yet.

* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::updatePageScreenProperties):

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (272727 => 272728)


--- trunk/Source/WebKit/ChangeLog	2021-02-11 16:06:08 UTC (rev 272727)
+++ trunk/Source/WebKit/ChangeLog	2021-02-11 16:09:10 UTC (rev 272728)
@@ -1,3 +1,17 @@
+2021-02-11  Simon Fraser  <[email protected]>
+
+        Crash when UI-side compositing is enabled on macOS
+        https://bugs.webkit.org/show_bug.cgi?id=221740
+
+        Reviewed by Tim Horton.
+
+        When UI-side compositing is enabled on macOS, WebProcess::updatePageScreenProperties()
+        crashes because allOf(m_pageMap.values(), ...) return a null WebPage. We're inside 
+        WebProcess::createWebPage() here, so haven't set the HashMap value yet.
+
+        * WebProcess/cocoa/WebProcessCocoa.mm:
+        (WebKit::WebProcess::updatePageScreenProperties):
+
 2021-02-11  Per Arne  <[email protected]>
 
         [macOS] Add syscall to allow list in WebContent sandbox

Modified: trunk/Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm (272727 => 272728)


--- trunk/Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm	2021-02-11 16:06:08 UTC (rev 272727)
+++ trunk/Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm	2021-02-11 16:09:10 UTC (rev 272728)
@@ -1166,7 +1166,7 @@
     }
 
     bool allPagesAreOnHDRScreens = allOf(m_pageMap.values(), [] (auto& page) {
-        return screenSupportsHighDynamicRange(page->mainFrameView());
+        return page && screenSupportsHighDynamicRange(page->mainFrameView());
     });
     setShouldOverrideScreenSupportsHighDynamicRange(true, allPagesAreOnHDRScreens);
 #endif
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to