[webkit-changes] [WebKit/WebKit] e2934b: [GPU Process] Ensure that only supported image dec...

Said Abou-Hallawa noreply at github.com
Sat Nov 4 06:45:17 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e2934b9029d0fb8381f11a719a8c33e7df5b18f8
      https://github.com/WebKit/WebKit/commit/e2934b9029d0fb8381f11a719a8c33e7df5b18f8
  Author: Said Abou-Hallawa <said at apple.com>
  Date:   2023-11-04 (Sat, 04 Nov 2023)

  Changed paths:
    M Source/WebCore/platform/graphics/cg/UTIRegistry.cpp
    M Source/WebCore/platform/graphics/cg/UTIRegistry.h
    M Source/WebCore/platform/network/mac/UTIUtilities.h
    M Source/WebCore/platform/network/mac/UTIUtilities.mm
    M Source/WebKit/GPUProcess/GPUProcess.cpp
    M Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm
    M Source/WebKit/WebProcess/WebPage/WebPage.cpp

  Log Message:
  -----------
  [GPU Process] Ensure that only supported image decoders run in the WebProcess
https://bugs.webkit.org/show_bug.cgi?id=256852
rdar://109414332

Reviewed by Brent Fulgham.

Ensure that ImageIO is allowed to decode only the (default + additional) supported
image types even outside WebKit rendering code path for example displaying a bitmap
image in a PDF document.

This work will be done for WK2 only. WK1 allows setting the prefrences only after
creating the WebView. And we use the prefrences to set the additional supported
image types. So there is no way to pass to know additional supported image types
when the WebView is created. And ImageIO expects CGImageSourceSetAllowableTypes()
to be called only once.

* Source/WebCore/platform/graphics/cg/UTIRegistry.cpp:
(WebCore::allowableImageTypes):
* Source/WebCore/platform/graphics/cg/UTIRegistry.h:
* Source/WebCore/platform/network/mac/UTIUtilities.h:
* Source/WebCore/platform/network/mac/UTIUtilities.mm:
(WebCore::setImageSourceAllowableTypes):
* Source/WebKit/GPUProcess/GPUProcess.cpp:
(WebKit::GPUProcess::initializeGPUProcess):
* Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm:
(WebKit::WebPage::platformInitialize):
* Source/WebKit/WebProcess/WebPage/WebPage.cpp:
(WebKit::m_historyItemClient):

Canonical link: https://commits.webkit.org/270228@main




More information about the webkit-changes mailing list