| Index: webrtc/modules/desktop_capture/cropping_window_capturer.cc
 | 
| diff --git a/webrtc/modules/desktop_capture/cropping_window_capturer.cc b/webrtc/modules/desktop_capture/cropping_window_capturer.cc
 | 
| index cbe7d96e5d637d579799cdf1581a76ef48ed5cd1..50aaeea0308d404c2335438d63c8d03472d0def9 100644
 | 
| --- a/webrtc/modules/desktop_capture/cropping_window_capturer.cc
 | 
| +++ b/webrtc/modules/desktop_capture/cropping_window_capturer.cc
 | 
| @@ -74,31 +74,31 @@ bool CroppingWindowCapturer::BringSelectedWindowToFront() {
 | 
|    return window_capturer_->BringSelectedWindowToFront();
 | 
|  }
 | 
|  
 | 
| -void CroppingWindowCapturer::OnCaptureCompleted(DesktopFrame* frame) {
 | 
| -  std::unique_ptr<DesktopFrame> screen_frame(frame);
 | 
| -
 | 
| +void CroppingWindowCapturer::OnCaptureResult(
 | 
| +    DesktopCapturer::Result result,
 | 
| +    std::unique_ptr<DesktopFrame> screen_frame) {
 | 
|    if (!ShouldUseScreenCapturer()) {
 | 
|      LOG(LS_INFO) << "Window no longer on top when ScreenCapturer finishes";
 | 
|      window_capturer_->Capture(DesktopRegion());
 | 
|      return;
 | 
|    }
 | 
|  
 | 
| -  if (!frame) {
 | 
| +  if (result != Result::SUCCESS) {
 | 
|      LOG(LS_WARNING) << "ScreenCapturer failed to capture a frame";
 | 
| -    callback_->OnCaptureCompleted(NULL);
 | 
| +    callback_->OnCaptureResult(result, nullptr);
 | 
|      return;
 | 
|    }
 | 
|  
 | 
|    DesktopRect window_rect = GetWindowRectInVirtualScreen();
 | 
|    if (window_rect.is_empty()) {
 | 
|      LOG(LS_WARNING) << "Window rect is empty";
 | 
| -    callback_->OnCaptureCompleted(NULL);
 | 
| +    callback_->OnCaptureResult(Result::ERROR_TEMPORARY, nullptr);
 | 
|      return;
 | 
|    }
 | 
|  
 | 
| -  std::unique_ptr<DesktopFrame> window_frame(
 | 
| -      CreateCroppedDesktopFrame(screen_frame.release(), window_rect));
 | 
| -  callback_->OnCaptureCompleted(window_frame.release());
 | 
| +  callback_->OnCaptureResult(
 | 
| +      Result::SUCCESS,
 | 
| +      CreateCroppedDesktopFrame(std::move(screen_frame), window_rect));
 | 
|  }
 | 
|  
 | 
|  #if !defined(WEBRTC_WIN)
 | 
| 
 |