| Index: media/capture/content/thread_safe_capture_oracle.cc
 | 
| diff --git a/media/capture/content/thread_safe_capture_oracle.cc b/media/capture/content/thread_safe_capture_oracle.cc
 | 
| index 9fc8f93b0f7e283eeee40ef89b188cd05d846b82..ad869b7d13051343a2164f66d7b1920ce34d7912 100644
 | 
| --- a/media/capture/content/thread_safe_capture_oracle.cc
 | 
| +++ b/media/capture/content/thread_safe_capture_oracle.cc
 | 
| @@ -211,26 +211,33 @@ void ThreadSafeCaptureOracle::DidCaptureFrame(
 | 
|  
 | 
|    base::AutoLock guard(lock_);
 | 
|  
 | 
| -  if (oracle_.CompleteCapture(frame_number, success, &reference_time)) {
 | 
| -    TRACE_EVENT_INSTANT0("gpu.capture", "CaptureSucceeded",
 | 
| -                         TRACE_EVENT_SCOPE_THREAD);
 | 
| -
 | 
| -    if (!client_)
 | 
| -      return;  // Capture is stopped.
 | 
| -
 | 
| -    frame->metadata()->SetDouble(VideoFrameMetadata::FRAME_RATE,
 | 
| -                                 params_.requested_format.frame_rate);
 | 
| -    frame->metadata()->SetTimeTicks(VideoFrameMetadata::CAPTURE_BEGIN_TIME,
 | 
| -                                    capture_begin_time);
 | 
| -    frame->metadata()->SetTimeTicks(VideoFrameMetadata::CAPTURE_END_TIME,
 | 
| -                                    base::TimeTicks::Now());
 | 
| -    frame->metadata()->SetTimeDelta(VideoFrameMetadata::FRAME_DURATION,
 | 
| -                                    estimated_frame_duration);
 | 
| -    frame->metadata()->SetTimeTicks(VideoFrameMetadata::REFERENCE_TIME,
 | 
| -                                    reference_time);
 | 
| -
 | 
| -    client_->OnIncomingCapturedVideoFrame(std::move(buffer), std::move(frame));
 | 
| -  }
 | 
| +  if (!oracle_.CompleteCapture(frame_number, success, &reference_time))
 | 
| +    return;
 | 
| +
 | 
| +  TRACE_EVENT_INSTANT0("gpu.capture", "CaptureSucceeded",
 | 
| +                       TRACE_EVENT_SCOPE_THREAD);
 | 
| +
 | 
| +  if (!client_)
 | 
| +    return;  // Capture is stopped.
 | 
| +
 | 
| +  frame->metadata()->SetDouble(VideoFrameMetadata::FRAME_RATE,
 | 
| +                               params_.requested_format.frame_rate);
 | 
| +  frame->metadata()->SetTimeTicks(VideoFrameMetadata::CAPTURE_BEGIN_TIME,
 | 
| +                                  capture_begin_time);
 | 
| +  frame->metadata()->SetTimeTicks(VideoFrameMetadata::CAPTURE_END_TIME,
 | 
| +                                  base::TimeTicks::Now());
 | 
| +  frame->metadata()->SetTimeDelta(VideoFrameMetadata::FRAME_DURATION,
 | 
| +                                  estimated_frame_duration);
 | 
| +  frame->metadata()->SetTimeTicks(VideoFrameMetadata::REFERENCE_TIME,
 | 
| +                                  reference_time);
 | 
| +
 | 
| +  DCHECK(frame->IsMappable());
 | 
| +  media::VideoCaptureFormat format(frame->coded_size(),
 | 
| +                                   params_.requested_format.frame_rate,
 | 
| +                                   frame->format(), media::PIXEL_STORAGE_CPU);
 | 
| +  client_->OnIncomingCapturedBufferExt(
 | 
| +      std::move(buffer), format, reference_time, frame->timestamp(),
 | 
| +      frame->visible_rect(), *frame->metadata());
 | 
|  }
 | 
|  
 | 
|  void ThreadSafeCaptureOracle::OnConsumerReportingUtilization(
 | 
| 
 |