| Index: content/browser/renderer_host/media/desktop_capture_device_aura.cc
|
| diff --git a/content/browser/renderer_host/media/desktop_capture_device_aura.cc b/content/browser/renderer_host/media/desktop_capture_device_aura.cc
|
| index 3783a2a50a43548a70adbb1da564490b39a42122..3f8b66fa530dbdec768ef84c0b43e0fb7b97cdca 100644
|
| --- a/content/browser/renderer_host/media/desktop_capture_device_aura.cc
|
| +++ b/content/browser/renderer_host/media/desktop_capture_device_aura.cc
|
| @@ -97,7 +97,7 @@ class DesktopVideoCaptureMachine
|
| // VideoCaptureFrameSource overrides.
|
| virtual bool Start(
|
| const scoped_refptr<ThreadSafeCaptureOracle>& oracle_proxy) OVERRIDE;
|
| - virtual void Stop() OVERRIDE;
|
| + virtual void Stop(const base::Closure& callback) OVERRIDE;
|
|
|
| // Implements aura::WindowObserver.
|
| virtual void OnWindowBoundsChanged(aura::Window* window,
|
| @@ -213,7 +213,7 @@ bool DesktopVideoCaptureMachine::Start(
|
| return true;
|
| }
|
|
|
| -void DesktopVideoCaptureMachine::Stop() {
|
| +void DesktopVideoCaptureMachine::Stop(const base::Closure& callback) {
|
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
|
|
| // Stop observing window events.
|
| @@ -234,6 +234,8 @@ void DesktopVideoCaptureMachine::Stop() {
|
| timer_.Stop();
|
|
|
| started_ = false;
|
| +
|
| + callback.Run();
|
| }
|
|
|
| void DesktopVideoCaptureMachine::UpdateCaptureSize() {
|
| @@ -401,7 +403,7 @@ void DesktopVideoCaptureMachine::OnWindowBoundsChanged(
|
| void DesktopVideoCaptureMachine::OnWindowDestroyed(aura::Window* window) {
|
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
|
|
| - Stop();
|
| + Stop(base::Bind(&base::DoNothing));
|
|
|
| oracle_proxy_->ReportError();
|
| }
|
|
|