Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 1d977e76f609d034cf9b24a1e739d1b8988d93e6 https://github.com/WebKit/WebKit/commit/1d977e76f609d034cf9b24a1e739d1b8988d93e6 Author: Abrar Rahman Protyasha <a_protya...@apple.com> Date: 2024-06-18 (Tue, 18 Jun 2024)
Changed paths: M Source/WebCore/plugins/PluginViewBase.h M Source/WebCore/testing/Internals.cpp M Source/WebCore/testing/Internals.h M Source/WebCore/testing/Internals.idl M Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.mm M Source/WebKit/WebProcess/Plugins/PluginView.cpp M Source/WebKit/WebProcess/Plugins/PluginView.h M Tools/TestWebKitAPI/Tests/WebKitCocoa/UnifiedPDFTests.mm Log Message: ----------- [UnifiedPDF] Crash under UnifiedPDFPlugin::performCopyEditingOperation() when using Command-C to copy on a full frame plugin with empty selection https://bugs.webkit.org/show_bug.cgi?id=275639 rdar://129820140 Reviewed by Wenson Hsieh and Sammy Gill. We were crashing under performCopyEditingOperation() when trying to build up an NSArray of pasteboard items because we failed to ensure that one (or more) of the web archive, plain string, and HTML data representations were nil. It is entirely possible for, say, -[NSString dataUsingEncoding:] to return nil if the conversion is lossy. To address this crash, we ensure each data representation we want to put on the pasteboard is non-nil before adding them to the NSArray collecting said items. * Source/WebCore/plugins/PluginViewBase.h: (WebCore::PluginViewBase::sendEditingCommandToPDFForTesting): * Source/WebCore/testing/Internals.cpp: (WebCore::Internals::sendEditingCommandToPDFForTesting const): * Source/WebCore/testing/Internals.h: * Source/WebCore/testing/Internals.idl: * Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/UnifiedPDFPlugin.mm: (WebKit::UnifiedPDFPlugin::performCopyEditingOperation const): * Source/WebKit/WebProcess/Plugins/PluginView.cpp: (WebKit::PluginView::sendEditingCommandToPDFForTesting): * Source/WebKit/WebProcess/Plugins/PluginView.h: * Tools/TestWebKitAPI/Tests/WebKitCocoa/UnifiedPDFTests.mm: (TestWebKitAPI::TEST(UnifiedPDF, CopyEditingCommandOnEmptySelectionShouldNotCrash)): Canonical link: https://commits.webkit.org/280163@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes