Title: [241745] trunk/Source/WebKit
Revision
241745
Author
[email protected]
Date
2019-02-18 15:40:44 -0800 (Mon, 18 Feb 2019)

Log Message

exitFullscreen should not instantiate a new model/interface mapping.
https://bugs.webkit.org/show_bug.cgi?id=191988
rdar://problem/42327939

Patch by Jeremy Jones <[email protected]> on 2019-02-18
Reviewed by Jer Noble.

This change is a speculative fix for a crash that cannot be reproduced.

Somehow, exitFullscreen is being requested after didCleanupFullscreen has completed.
This change should allow us to prevent the crash in release, and assert in debug.

* UIProcess/Cocoa/VideoFullscreenManagerProxy.mm:
(WebKit::VideoFullscreenManagerProxy::exitFullscreen):

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (241744 => 241745)


--- trunk/Source/WebKit/ChangeLog	2019-02-18 23:27:07 UTC (rev 241744)
+++ trunk/Source/WebKit/ChangeLog	2019-02-18 23:40:44 UTC (rev 241745)
@@ -1,3 +1,19 @@
+2019-02-18  Jeremy Jones  <[email protected]>
+
+        exitFullscreen should not instantiate a new model/interface mapping.
+        https://bugs.webkit.org/show_bug.cgi?id=191988
+        rdar://problem/42327939
+
+        Reviewed by Jer Noble.
+
+        This change is a speculative fix for a crash that cannot be reproduced.
+
+        Somehow, exitFullscreen is being requested after didCleanupFullscreen has completed.
+        This change should allow us to prevent the crash in release, and assert in debug.
+
+        * UIProcess/Cocoa/VideoFullscreenManagerProxy.mm:
+        (WebKit::VideoFullscreenManagerProxy::exitFullscreen):
+
 2019-02-18  John Wilander  <[email protected]>
 
         Check the existence of the frame in Document::hasFrameSpecificStorageAccess() and Document::setHasFrameSpecificStorageAccess()

Modified: trunk/Source/WebKit/UIProcess/Cocoa/VideoFullscreenManagerProxy.mm (241744 => 241745)


--- trunk/Source/WebKit/UIProcess/Cocoa/VideoFullscreenManagerProxy.mm	2019-02-18 23:27:07 UTC (rev 241744)
+++ trunk/Source/WebKit/UIProcess/Cocoa/VideoFullscreenManagerProxy.mm	2019-02-18 23:40:44 UTC (rev 241745)
@@ -531,6 +531,10 @@
 
 void VideoFullscreenManagerProxy::exitFullscreen(uint64_t contextId, WebCore::IntRect finalRect)
 {
+    ASSERT(m_contextMap.contains(contextId));
+    if (!m_contextMap.contains(contextId))
+        return;
+
 #if PLATFORM(IOS_FAMILY)
     ensureInterface(contextId).exitFullscreen(finalRect);
 #else
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to