[webkit-changes] [WebKit/WebKit] 7df0ac: REGRESSION(261943 at main) [iOS] media/video-object-f...

Jer Noble noreply at github.com
Tue Mar 28 08:48:47 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7df0acc2c3c3436563b3e80fa6e102be458927fc
      https://github.com/WebKit/WebKit/commit/7df0acc2c3c3436563b3e80fa6e102be458927fc
  Author: Jer Noble <jer.noble at apple.com>
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
    M Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.cpp
    M Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteCustom.h
    M Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteCustom.mm

  Log Message:
  -----------
  REGRESSION(261943 at main) [iOS] media/video-object-fit.html failing
https://bugs.webkit.org/show_bug.cgi?id=254560
rdar://107290418

Reviewed by Eric Carlson.

Revert more parts of 260575 at main. In 260575 at main, a call to didCommit() in
PlatformCALayerRemote::recursiveBuildTransaction() was removed to force the compositor to
send the new properties up to the UIProcess (rather than just apply them locally). And this
worked as intended so long as "no remote hosting from the WebContent process" was enabled.
However, as soon as an off-by-default runtime check was added in 261943 at main, the removal
of didCommit() caused all layer properties to be applied _both_ in the UIProcess _and_ the
WebContent process, which for videos whose contents' aspect ratio did not match their own,
caused them to be pushed partially or completely out of frame.

It also broke the media/video-object-fit.html test.

Add a parallel runtime check that only calls didCommit() when we are on the legacy
path for video content.

* Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.cpp:
(WebKit::PlatformCALayerRemote::recursiveBuildTransaction):
* Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteCustom.h:
* Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteCustom.mm:
(WebKit::PlatformCALayerRemoteCustom::PlatformCALayerRemoteCustom):

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




More information about the webkit-changes mailing list