Commit f28f29f4 authored by Derek Cheng's avatar Derek Cheng Committed by Commit Bot

Revert "Revert "Run constraints processing for screen capture on the main thread.""

This reverts commit 363560ef.

Reason for revert: The revert broke compile. Will reland and disable the failing test instead.

Original change's description:
> Revert "Run constraints processing for screen capture on the main thread."
> 
> This reverts commit 112c4ff7.
> 
> Reason for revert: This might have broken browser_tests on Mac ASan 64 Tests (1): https://uberchromegw.corp.google.com/i/chromium.memory/builders/Mac%20ASan%2064%20Tests%20%281%29/builds/36626
> 
> Original change's description:
> > Run constraints processing for screen capture on the main thread.
> > 
> > Some code paths require access to Blink strings that can only be
> >  accessed on the main thread.
> > A test that triggers the bug is coming up on crrev.com/c/738040.
> > 
> > Bug: 791992
> > Change-Id: I55ae617ae623766d4bd975a19070bde410d8af1d
> > Reviewed-on: https://chromium-review.googlesource.com/809005
> > Reviewed-by: Henrik Boström <hbos@chromium.org>
> > Commit-Queue: Guido Urdaneta <guidou@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#521708}
> 
> TBR=hbos@chromium.org,guidou@chromium.org
> 
> Change-Id: Ibe39bacdedfbf54fac48a6469ec59c4f32381fd1
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: 791992
> Reviewed-on: https://chromium-review.googlesource.com/809240
> Reviewed-by: Derek Cheng <imcheng@chromium.org>
> Commit-Queue: Derek Cheng <imcheng@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#521872}

TBR=hbos@chromium.org,imcheng@chromium.org,guidou@chromium.org

Change-Id: Ia5cf4ca4e14d3f83aa93c6e9aad71c3348a2467d
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 791992
Reviewed-on: https://chromium-review.googlesource.com/809887Reviewed-by: default avatarDerek Cheng <imcheng@chromium.org>
Commit-Queue: Derek Cheng <imcheng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#521882}
parent f7e57946
...@@ -456,14 +456,7 @@ void UserMediaProcessor::SetupVideoInput() { ...@@ -456,14 +456,7 @@ void UserMediaProcessor::SetupVideoInput() {
GetUserMediaRequestFailed(result, failed_constraint_name); GetUserMediaRequestFailed(result, failed_constraint_name);
return; return;
} }
base::PostTaskAndReplyWithResult( SelectVideoContentSettings();
worker_task_runner_.get(), FROM_HERE,
base::Bind(&SelectSettingsVideoContentCapture,
current_request_info_->web_request().VideoConstraints(),
video_controls.stream_source),
base::Bind(&UserMediaProcessor::FinalizeSelectVideoContentSettings,
weak_factory_.GetWeakPtr(),
current_request_info_->web_request()));
} }
} }
...@@ -513,13 +506,12 @@ void UserMediaProcessor::SelectVideoDeviceSettings( ...@@ -513,13 +506,12 @@ void UserMediaProcessor::SelectVideoDeviceSettings(
GenerateStreamForCurrentRequestInfo(); GenerateStreamForCurrentRequestInfo();
} }
void UserMediaProcessor::FinalizeSelectVideoContentSettings( void UserMediaProcessor::SelectVideoContentSettings() {
const blink::WebUserMediaRequest& web_request,
const VideoCaptureSettings& settings) {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
if (!IsCurrentRequestInfo(web_request)) DCHECK(current_request_info_);
return; VideoCaptureSettings settings = SelectSettingsVideoContentCapture(
current_request_info_->web_request().VideoConstraints(),
current_request_info_->stream_controls()->video.stream_source);
if (!settings.HasValue()) { if (!settings.HasValue()) {
blink::WebString failed_constraint_name = blink::WebString failed_constraint_name =
blink::WebString::FromASCII(settings.failed_constraint_name()); blink::WebString::FromASCII(settings.failed_constraint_name());
......
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
#include <memory> #include <memory>
#include <string> #include <string>
#include <utility>
#include <vector> #include <vector>
#include "base/callback_forward.h" #include "base/callback_forward.h"
...@@ -255,9 +256,7 @@ class CONTENT_EXPORT UserMediaProcessor ...@@ -255,9 +256,7 @@ class CONTENT_EXPORT UserMediaProcessor
void FinalizeSelectVideoDeviceSettings( void FinalizeSelectVideoDeviceSettings(
const blink::WebUserMediaRequest& web_request, const blink::WebUserMediaRequest& web_request,
const VideoCaptureSettings& settings); const VideoCaptureSettings& settings);
void FinalizeSelectVideoContentSettings( void SelectVideoContentSettings();
const blink::WebUserMediaRequest& web_request,
const VideoCaptureSettings& settings);
void GenerateStreamForCurrentRequestInfo(); void GenerateStreamForCurrentRequestInfo();
......
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