[webkit-changes] [WebKit/WebKit] ab2fff: [UnifiedPDF] Null pointer dereference crash under ...
Abrar Rahman Protyasha
noreply at github.com
Tue Oct 29 17:11:17 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: ab2fff92b37e52d6c65e215b155e6b92f1646954
https://github.com/WebKit/WebKit/commit/ab2fff92b37e52d6c65e215b155e6b92f1646954
Author: Abrar Rahman Protyasha <a_protyasha at apple.com>
Date: 2024-10-29 (Tue, 29 Oct 2024)
Changed paths:
A LayoutTests/http/tests/pdf/page-in-window-update-with-linearized-pdf-in-display-none-iframe-expected.txt
A LayoutTests/http/tests/pdf/page-in-window-update-with-linearized-pdf-in-display-none-iframe.html
M LayoutTests/platform/mac-site-isolation/TestExpectations
M LayoutTests/platform/mac-ventura/TestExpectations
M Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.mm
Log Message:
-----------
[UnifiedPDF] Null pointer dereference crash under PDFScrollingPresentationController::updateIsInWindow(bool)
https://bugs.webkit.org/show_bug.cgi?id=282272
rdar://138776966
Reviewed by Simon Fraser.
Page activity state updates may reach the plugin, and hence calling into
UnifiedPDFPlugin::didChangeIsInWindow(), before the main thread has
created any layers. This triggers a null pointer dereference crash as it
breaks our unsaid assumption about content layer availability inside the
presentation controller.
This patch introduces an early return if the plugin receives an inWindow
update but does not have a PDFDocument.
* LayoutTests/http/tests/pdf/page-in-window-update-with-linearized-pdf-in-display-none-iframe-expected.txt: Added.
* LayoutTests/http/tests/pdf/page-in-window-update-with-linearized-pdf-in-display-none-iframe.html: Added.
* LayoutTests/platform/mac-site-isolation/TestExpectations:
* LayoutTests/platform/mac-ventura/TestExpectations:
* Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.mm:
(WebKit::UnifiedPDFPlugin::didChangeIsInWindow):
Canonical link: https://commits.webkit.org/285872@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list