[webkit-changes] [WebKit/WebKit] ba27ab: REGRESSION(260575 at main) Tapping PiP Button Crashes...

Jer Noble noreply at github.com
Tue Feb 28 07:51:22 PST 2023


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

  Changed paths:
    M Source/WebCore/platform/cocoa/WebAVPlayerLayer.mm
    M Source/WebCore/platform/cocoa/WebAVPlayerLayerView.mm

  Log Message:
  -----------
  REGRESSION(260575 at main) Tapping PiP Button Crashes UIProcess in -[WebAVPlayerLayer setVideoGravity:]
https://bugs.webkit.org/show_bug.cgi?id=253034
rdar://105992124

Reviewed by Simon Fraser.

-setVideoGravity is dereferencing _fullscreenInterface unconditionally, and by chance _fullscreenInterface is
nil when entering PiP mode.

Call -setFullscreenInterface: earlier in the process of moving video playback to the PiP window, and as a belt-
and-suspenders technique, also nil check _fullscreennInterface before dereferencing it in WebAVPlayerLayer.

* Source/WebCore/platform/cocoa/WebAVPlayerLayer.mm:
(-[WebAVPlayerLayer resolveBounds]):
(-[WebAVPlayerLayer setVideoGravity:]):
* Source/WebCore/platform/cocoa/WebAVPlayerLayerView.mm:
(WebCore::WebAVPlayerLayerView_startRoutingVideoToPictureInPicturePlayerLayerView):

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




More information about the webkit-changes mailing list