Bug 1120241 - Schedule the state machine when setting logical decoder state. r=cpearce a=lmandel
authorBobby Holley <bobbyholley@gmail.com>
Thu, 29 Jan 2015 22:16:28 -0800
changeset 243683 b0684ad8a47c
parent 243682 8f52ac825ba7
child 243684 32f28bbf1fb4
push id4435
push userrgiles@mozilla.com
push date2015-02-04 21:24 +0000
treeherdermozilla-beta@b0684ad8a47c [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerscpearce, lmandel
bugs1120241
milestone36.0
Bug 1120241 - Schedule the state machine when setting logical decoder state. r=cpearce a=lmandel
dom/media/MediaDecoder.cpp
--- a/dom/media/MediaDecoder.cpp
+++ b/dom/media/MediaDecoder.cpp
@@ -1278,17 +1278,19 @@ void MediaDecoder::ApplyStateToStateMach
       case PLAY_STATE_PLAYING:
         mDecoderStateMachine->Play();
         break;
       case PLAY_STATE_SEEKING:
         mDecoderStateMachine->Seek(mRequestedSeekTarget);
         mRequestedSeekTarget.Reset();
         break;
       default:
-        /* No action needed */
+        // The state machine checks for things like PAUSED in RunStateMachine.
+        // Make sure to keep it in the loop.
+        ScheduleStateMachineThread();
         break;
     }
   }
 }
 
 void MediaDecoder::PlaybackPositionChanged()
 {
   MOZ_ASSERT(NS_IsMainThread());