Commit 97537191 authored by Moja Hsu's avatar Moja Hsu Committed by Commit Bot

JDA: Fix deadlock for non-JDA case

The code will enter deadlock if the device has no JPEG decode
accelerator.
This CL fixes it.

BUG=chromium:790838
TEST=test camera preview on minnie

Change-Id: I695f80351a451614c7c830e3e31b40196fe9b457
Reviewed-on: https://chromium-review.googlesource.com/802935Reviewed-by: default avatarRicky Liang <jcliang@chromium.org>
Reviewed-by: default avatarMax Morin <maxmorin@chromium.org>
Commit-Queue: Ricky Liang <jcliang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#521085}
parent b6c3c2bc
...@@ -282,8 +282,8 @@ void VideoCaptureGpuJpegDecoder::FinishInitialization( ...@@ -282,8 +282,8 @@ void VideoCaptureGpuJpegDecoder::FinishInitialization(
TRACE_EVENT0("gpu", "VideoCaptureGpuJpegDecoder::FinishInitialization"); TRACE_EVENT0("gpu", "VideoCaptureGpuJpegDecoder::FinishInitialization");
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
base::AutoLock lock(lock_);
if (unbound_remote_decoder.is_valid()) { if (unbound_remote_decoder.is_valid()) {
base::AutoLock lock(lock_);
decoder_ = base::MakeUnique<media::MojoJpegDecodeAccelerator>( decoder_ = base::MakeUnique<media::MojoJpegDecodeAccelerator>(
BrowserThread::GetTaskRunnerForThread(BrowserThread::IO), BrowserThread::GetTaskRunnerForThread(BrowserThread::IO),
std::move(unbound_remote_decoder)); std::move(unbound_remote_decoder));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment