Bug 1374138 - Let MediaDecoderReaderWrapper::RequestVideoData() have a const media::TimeUnit& parameter; r?jya draft
authorKaku Kuo <kaku@mozilla.com>
Mon, 19 Jun 2017 10:45:55 +0800
changeset 596264 f1be9384d272a0ab8084feedf7c157e76e78e888
parent 594701 507631dc20adac2f2e82de44ffcb646b108944b6
child 596434 92a11eb0515855014ff95af22c311239bc2cbe1e
push id64562
push userbmo:kaku@mozilla.com
push dateMon, 19 Jun 2017 02:46:20 +0000
reviewersjya
bugs1374138
milestone56.0a1
Bug 1374138 - Let MediaDecoderReaderWrapper::RequestVideoData() have a const media::TimeUnit& parameter; r?jya MozReview-Commit-ID: DgCLE6xXEkn
dom/media/MediaDecoderReaderWrapper.cpp
dom/media/MediaDecoderReaderWrapper.h
--- a/dom/media/MediaDecoderReaderWrapper.cpp
+++ b/dom/media/MediaDecoderReaderWrapper.cpp
@@ -57,29 +57,29 @@ MediaDecoderReaderWrapper::RequestAudioD
              return AudioDataPromise::CreateAndResolve(aAudio.forget(), __func__);
            },
            [] (const MediaResult& aError) {
              return AudioDataPromise::CreateAndReject(aError, __func__);
            });
 }
 
 RefPtr<MediaDecoderReaderWrapper::VideoDataPromise>
-MediaDecoderReaderWrapper::RequestVideoData(media::TimeUnit aTimeThreshold)
+MediaDecoderReaderWrapper::RequestVideoData(const media::TimeUnit& aTimeThreshold)
 {
   MOZ_ASSERT(mOwnerThread->IsCurrentThreadIn());
   MOZ_ASSERT(!mShutdown);
 
-  if (aTimeThreshold > media::TimeUnit::Zero()) {
-    aTimeThreshold += StartTime();
-  }
+  const auto threshold = aTimeThreshold > media::TimeUnit::Zero()
+                         ? aTimeThreshold + StartTime()
+                         : aTimeThreshold;
 
   int64_t startTime = StartTime().ToMicroseconds();
   return InvokeAsync(
     mReader->OwnerThread(), mReader.get(), __func__,
-    &MediaDecoderReader::RequestVideoData, aTimeThreshold)
+    &MediaDecoderReader::RequestVideoData, threshold)
   ->Then(mOwnerThread, __func__,
          [startTime] (RefPtr<VideoData> aVideo) {
            aVideo->AdjustForStartTime(startTime);
            return VideoDataPromise::CreateAndResolve(aVideo.forget(), __func__);
          },
          [] (const MediaResult& aError) {
            return VideoDataPromise::CreateAndReject(aError, __func__);
          });
--- a/dom/media/MediaDecoderReaderWrapper.h
+++ b/dom/media/MediaDecoderReaderWrapper.h
@@ -37,17 +37,17 @@ public:
                             MediaDecoderReader* aReader);
 
   media::TimeUnit StartTime() const;
   RefPtr<MetadataPromise> ReadMetadata();
 
   RefPtr<AudioDataPromise> RequestAudioData();
 
   RefPtr<VideoDataPromise>
-  RequestVideoData(media::TimeUnit aTimeThreshold);
+  RequestVideoData(const media::TimeUnit& aTimeThreshold);
 
   RefPtr<WaitForDataPromise> WaitForData(MediaData::Type aType);
 
   RefPtr<SeekPromise> Seek(const SeekTarget& aTarget);
   RefPtr<ShutdownPromise> Shutdown();
 
   void ReleaseResources();
   void ResetDecode(TrackSet aTracks);