From 5265cba88632884f763bbd5100736f9fc1606ad6 Mon Sep 17 00:00:00 2001 From: VaL Doroshchuk Date: Fri, 1 Apr 2016 15:53:23 +0300 Subject: [PATCH] Fixed assigning HAVE_ENOUGH_DATA to media player Fixed MediaSource::monitorSourceBuffers() to prevent assigning HAVE_ENOUGH_DATA to media player which led to send loadeddata event before initialization segment received, and no valid duration, seekable and other attributes returned. --- Source/WebCore/Modules/mediasource/MediaSource.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/WebCore/Modules/mediasource/MediaSource.cpp b/Source/WebCore/Modules/mediasource/MediaSource.cpp index eea38b27d58a7..a27a5399c19b8 100644 --- a/Source/WebCore/Modules/mediasource/MediaSource.cpp +++ b/Source/WebCore/Modules/mediasource/MediaSource.cpp @@ -255,7 +255,7 @@ void MediaSource::monitorSourceBuffers() // https://dvcs.w3.org/hg/html-media/raw-file/default/media-source/media-source.html#buffer-monitoring // Note, the behavior if activeSourceBuffers is empty is undefined. - if (!m_activeSourceBuffers) { + if (!m_activeSourceBuffers || m_activeSourceBuffers->length() == 0) { m_private->setReadyState(MediaPlayer::HaveNothing); return; }