Unreviewed, rolling out r251460.
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 11 Nov 2019 16:24:49 +0000 (16:24 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 11 Nov 2019 16:24:49 +0000 (16:24 +0000)
https://bugs.webkit.org/show_bug.cgi?id=204070

This patch caused a crash due to synchronous event firing
(Requested by jernoble on #webkit).

Reverted changeset:

"media/W3C/video/networkState/networkState_during_progress.html
is flaky"
https://bugs.webkit.org/show_bug.cgi?id=76280
https://trac.webkit.org/changeset/251460

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@252325 268f45cc-cd09-0410-ab3c-d52691b4dbfc

LayoutTests/ChangeLog
LayoutTests/TestExpectations
LayoutTests/platform/gtk/TestExpectations
LayoutTests/platform/mac/TestExpectations
LayoutTests/platform/win/TestExpectations
Source/WebCore/ChangeLog
Source/WebCore/html/HTMLMediaElement.cpp

index a1b9301..e99194c 100644 (file)
@@ -1,3 +1,18 @@
+2019-11-11  Commit Queue  <commit-queue@webkit.org>
+
+        Unreviewed, rolling out r251460.
+        https://bugs.webkit.org/show_bug.cgi?id=204070
+
+        This patch caused a crash due to synchronous event firing
+        (Requested by jernoble on #webkit).
+
+        Reverted changeset:
+
+        "media/W3C/video/networkState/networkState_during_progress.html
+        is flaky"
+        https://bugs.webkit.org/show_bug.cgi?id=76280
+        https://trac.webkit.org/changeset/251460
+
 2019-11-10  Ryosuke Niwa  <rniwa@webkit.org>
 
         iOS: fast/events/scroll-subframe-in-rendering-update.html always fails
index 6644a41..5eb59e2 100644 (file)
@@ -846,6 +846,9 @@ webkit.org/b/116473 editing/selection/user-drag-element-and-user-select-none.htm
 webkit.org/b/139862 editing/spelling/editing-multiple-words-with-markers.html [ Timeout Pass ]
 webkit.org/b/139903 editing/spelling/grammar-paste.html [ Timeout Pass ]
 
+# media/W3C/video/networkState/networkState_during_progress.html is flaky
+webkit.org/b/76280 media/W3C/video/networkState/networkState_during_progress.html [ Pass Failure ]
+
 # This test will run slowly in debug mode, but is plenty fast in release.
 [ Debug ] js/slow-stress/emscripten-memops.html [ Skip ]
 
index 31f08c8..042a4ef 100644 (file)
@@ -1560,6 +1560,8 @@ webkit.org/b/132999 html5lib/generated/run-tests16-write.html [ Pass Timeout ]
 webkit.org/b/133000 js/slow-stress/call-spread.html [ Pass Timeout ]
 webkit.org/b/133001 fast/workers/worker-context-gc.html [ Pass Timeout ]
 
+webkit.org/b/133865 media/W3C/video/networkState/networkState_during_progress.html [ Failure Pass ]
+
 webkit.org/b/133869 media/video-seek-after-end.html [ Failure Pass ]
 
 webkit.org/b/36642 fast/replaced/border-radius-clip.html [ Failure Pass ]
index 7755621..331e606 100644 (file)
@@ -765,6 +765,7 @@ webkit.org/b/149113 media/media-controls-play-button-updates.html [ Pass Failure
 ## --- Start flaky media tests ---
 webkit.org/b/34331 http/tests/media/video-referer.html [ Pass Timeout ]
 webkit.org/b/35297 media/video-display-aspect-ratio.html [ Pass Failure ]
+webkit.org/b/82976 media/W3C/video/networkState/networkState_during_progress.html [ Pass Failure ]
 webkit.org/b/85525 media/video-played-reset.html [ Pass Failure ]
 webkit.org/b/112659 media/video-playing-and-pause.html [ Failure Timeout ]
 webkit.org/b/114744 media/video-layer-crash.html [ Pass Timeout Failure ]
index e050662..0a65ffe 100644 (file)
@@ -913,6 +913,8 @@ media/encrypted-media/encrypted-media-events.html [ Skip ] # [ WontFix ]
 media/encrypted-media/encrypted-media-not-loaded.html [ Skip ] # [ WontFix ]
 media/encrypted-media/encrypted-media-syntax.html [ Skip ] # [ WontFix ]
 
+webkit.org/b/103442 media/W3C/video/networkState/networkState_during_progress.html [ Skip ]
+
 # No CORS support for media elements is implemented yet.
 webkit.org/b/176626 http/tests/security/canvas-remote-read-remote-video-allowed-anonymous.html [ Crash Failure ]
 webkit.org/b/176653 http/tests/security/canvas-remote-read-remote-video-allowed-with-credentials.html [ Crash Failure ]
index 537497e..d9b6c9e 100644 (file)
@@ -1,3 +1,18 @@
+2019-11-11  Commit Queue  <commit-queue@webkit.org>
+
+        Unreviewed, rolling out r251460.
+        https://bugs.webkit.org/show_bug.cgi?id=204070
+
+        This patch caused a crash due to synchronous event firing
+        (Requested by jernoble on #webkit).
+
+        Reverted changeset:
+
+        "media/W3C/video/networkState/networkState_during_progress.html
+        is flaky"
+        https://bugs.webkit.org/show_bug.cgi?id=76280
+        https://trac.webkit.org/changeset/251460
+
 2019-11-11  Zalan Bujtas  <zalan@apple.com>
 
         [LFC][IFC] Line::m_trimmableRuns does not need to be a ListHashSet
index fc30520..ff0ba50 100644 (file)
@@ -2369,16 +2369,11 @@ void HTMLMediaElement::changeNetworkStateFromLoadingToIdle()
     if (hasMediaControls() && m_player->didLoadingProgress())
         mediaControls()->bufferingProgressed();
 
-    // Schedule one last *synchronous* progress event so we guarantee
-    // that at least one is fired for files that load very
-    // quickly. This must be synchronous since it's very easy for the
-    // async queue to dispatch this to JS after we set m_networkState
-    // to IDLE below, which breaks the invariant of onprogress
-    // happening during NETWORK_LOADING.
-    dispatchEvent(Event::create(eventNames().progressEvent, Event::CanBubble::No, Event::IsCancelable::Yes));
-
-    m_networkState = NETWORK_IDLE;
+    // Schedule one last progress event so we guarantee that at least one is fired
+    // for files that load very quickly.
+    scheduleEvent(eventNames().progressEvent);
     scheduleEvent(eventNames().suspendEvent);
+    m_networkState = NETWORK_IDLE;
 }
 
 void HTMLMediaElement::mediaPlayerReadyStateChanged(MediaPlayer*)