Title: [231872] trunk/Source/WebCore
Revision
231872
Author
jer.no...@apple.com
Date
2018-05-16 14:23:29 -0700 (Wed, 16 May 2018)

Log Message

CRASH: Exception thrown from -[AVContentKeySession processContentKeyRequestWithIdentifier:initializationData:options:] after -expire called
https://bugs.webkit.org/show_bug.cgi?id=185690
<rdar://problem/38297768>

Reviewed by Eric Carlson.

Reject all calls to update() after close() has been called on the session.

* platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm:
(WebCore::CDMSessionAVContentKeySession::update):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (231871 => 231872)


--- trunk/Source/WebCore/ChangeLog	2018-05-16 21:02:49 UTC (rev 231871)
+++ trunk/Source/WebCore/ChangeLog	2018-05-16 21:23:29 UTC (rev 231872)
@@ -1,3 +1,16 @@
+2018-05-16  Jer Noble  <jer.no...@apple.com>
+
+        CRASH: Exception thrown from -[AVContentKeySession processContentKeyRequestWithIdentifier:initializationData:options:] after -expire called
+        https://bugs.webkit.org/show_bug.cgi?id=185690
+        <rdar://problem/38297768>
+
+        Reviewed by Eric Carlson.
+
+        Reject all calls to update() after close() has been called on the session.
+
+        * platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm:
+        (WebCore::CDMSessionAVContentKeySession::update):
+
 2018-05-16  Andy VanWagoner  <andy@vanwagoner.family>
 
         Add support for Intl NumberFormat formatToParts

Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm (231871 => 231872)


--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm	2018-05-16 21:02:49 UTC (rev 231871)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm	2018-05-16 21:23:29 UTC (rev 231872)
@@ -237,6 +237,11 @@
 {
     UNUSED_PARAM(nextMessage);
 
+    if (m_stopped) {
+        errorCode = MediaPlayer::InvalidPlayerState;
+        return false;
+    }
+
     bool shouldGenerateKeyRequest = !m_certificate || isEqual(key, "renew");
     if (!m_certificate) {
         LOG(Media, "CDMSessionAVContentKeySession::update(%p) - certificate data", this);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to