diff options
author | wjia@chromium.org <wjia@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-29 23:05:35 +0000 |
---|---|---|
committer | wjia@chromium.org <wjia@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-29 23:05:35 +0000 |
commit | 6062950ad141b45944780487ea095749dcdcc8ff (patch) | |
tree | f1be86e52245f315d5f79fe35c2b829eb08e5ac0 /content/renderer/media | |
parent | 9aee045ebea4c3da07a50426d6d52b8ba814e464 (diff) | |
download | chromium_src-6062950ad141b45944780487ea095749dcdcc8ff.zip chromium_src-6062950ad141b45944780487ea095749dcdcc8ff.tar.gz chromium_src-6062950ad141b45944780487ea095749dcdcc8ff.tar.bz2 |
fix error handling in LocalVideoCapture.
OnRemoved can be called due to device error. By resetting capture_engine_, LocalVideoCapture could know this condition when Stop is called.
Review URL: https://codereview.chromium.org/11336018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@164770 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/renderer/media')
-rw-r--r-- | content/renderer/media/local_video_capture.cc | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/content/renderer/media/local_video_capture.cc b/content/renderer/media/local_video_capture.cc index 1f885c7..b08f221 100644 --- a/content/renderer/media/local_video_capture.cc +++ b/content/renderer/media/local_video_capture.cc @@ -101,6 +101,8 @@ void LocalVideoCapture::OnError(media::VideoCapture* capture, void LocalVideoCapture::OnRemoved(media::VideoCapture* capture) { DVLOG(3) << "LocalVideoCapture::OnRemoved"; DCHECK(message_loop_proxy_->BelongsToCurrentThread()); + // OnRemoved could be triggered by error. + capture_engine_ = NULL; vc_manager_->RemoveDevice(video_stream_id_, this); Release(); // Balance the AddRef() in StartCapture(). } |