Title: [175333] trunk/Source/WebCore
Revision
175333
Author
[email protected]
Date
2014-10-29 10:53:26 -0700 (Wed, 29 Oct 2014)

Log Message

[EME] NULL-dereference crash in MediaKeys::setMediaElement().
https://bugs.webkit.org/show_bug.cgi?id=138177

Reviewed by Eric Carlson.

NULL-check m_mediaElement->player() before using. It may have been cleared if the HTMLMediaElement
has previously had stop() called.

* Modules/encryptedmedia/MediaKeys.cpp:
(WebCore::MediaKeys::setMediaElement):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (175332 => 175333)


--- trunk/Source/WebCore/ChangeLog	2014-10-29 17:53:24 UTC (rev 175332)
+++ trunk/Source/WebCore/ChangeLog	2014-10-29 17:53:26 UTC (rev 175333)
@@ -1,5 +1,18 @@
 2014-10-29  Jer Noble  <[email protected]>
 
+        [EME] NULL-dereference crash in MediaKeys::setMediaElement().
+        https://bugs.webkit.org/show_bug.cgi?id=138177
+
+        Reviewed by Eric Carlson.
+
+        NULL-check m_mediaElement->player() before using. It may have been cleared if the HTMLMediaElement
+        has previously had stop() called.
+
+        * Modules/encryptedmedia/MediaKeys.cpp:
+        (WebCore::MediaKeys::setMediaElement):
+
+2014-10-29  Jer Noble  <[email protected]>
+
         [EME] MediaKeySession resources persist across page reloads
         https://bugs.webkit.org/show_bug.cgi?id=138176
 

Modified: trunk/Source/WebCore/Modules/encryptedmedia/MediaKeys.cpp (175332 => 175333)


--- trunk/Source/WebCore/Modules/encryptedmedia/MediaKeys.cpp	2014-10-29 17:53:24 UTC (rev 175332)
+++ trunk/Source/WebCore/Modules/encryptedmedia/MediaKeys.cpp	2014-10-29 17:53:26 UTC (rev 175333)
@@ -144,12 +144,12 @@
 
 void MediaKeys::setMediaElement(HTMLMediaElement* element)
 {
-    if (m_mediaElement)
+    if (m_mediaElement && m_mediaElement->player())
         m_mediaElement->player()->setCDMSession(nullptr);
 
     m_mediaElement = element;
 
-    if (m_mediaElement && !m_sessions.isEmpty())
+    if (m_mediaElement && m_mediaElement->player() && !m_sessions.isEmpty())
         m_mediaElement->player()->setCDMSession(m_sessions.last()->session());
 }
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to