Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: cherry-pick a0a48e0132bc from chromium #22983

Merged
merged 5 commits into from Apr 9, 2020
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
1 change: 1 addition & 0 deletions patches/chromium/.patches
Expand Up @@ -100,3 +100,4 @@ move_readablestream_requests_onto_the_stack_before_iteration.patch
streams_convert_state_dchecks_to_checks.patch
audiocontext_haspendingactivity_unless_it_s_closed.patch
protect_automatic_pull_handlers_with_mutex.patch
cherry-pick-a0a48e0132bc.patch
44 changes: 44 additions & 0 deletions patches/chromium/cherry-pick-a0a48e0132bc.patch
@@ -0,0 +1,44 @@
From a0a48e0132bc04736a1ef116d89ae19eea01500d Mon Sep 17 00:00:00 2001
From: Miguel Casas <mcasas@chromium.org>
Date: Thu, 5 Mar 2020 19:42:53 +0000
Subject: [PATCH] MojoVideoEncodeAcceleratorService: handle potential later
Initialize()

This CL fixes a potential Initialize()-after-Initialize() of the said
service, as described in the bug, following the suggestion in #c11.

Bug: 1056222
Change-Id: Idd951d3f0bee62b94382ffe80e4e6b3cef33e6d9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2090031
Commit-Queue: Miguel Casas <mcasas@chromium.org>
Commit-Queue: Chrome Cunningham <chcunningham@chromium.org>
Auto-Submit: Miguel Casas <mcasas@chromium.org>
Reviewed-by: danakj <danakj@chromium.org>
Reviewed-by: Chrome Cunningham <chcunningham@chromium.org>
Cr-Commit-Position: refs/heads/master@{#747376}
---
.../mojo/services/mojo_video_encode_accelerator_service.cc | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/media/mojo/services/mojo_video_encode_accelerator_service.cc b/media/mojo/services/mojo_video_encode_accelerator_service.cc
index 50ade44981a1b..51d62ebbb2180 100644
--- a/media/mojo/services/mojo_video_encode_accelerator_service.cc
+++ b/media/mojo/services/mojo_video_encode_accelerator_service.cc
@@ -48,11 +48,16 @@ void MojoVideoEncodeAcceleratorService::Initialize(
InitializeCallback success_callback) {
DVLOG(1) << __func__ << " " << config.AsHumanReadableString();
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- DCHECK(!encoder_);
DCHECK(config.input_format == PIXEL_FORMAT_I420 ||
config.input_format == PIXEL_FORMAT_NV12)
<< "Only I420 or NV12 format supported";

+ if (encoder_) {
+ DLOG(ERROR) << __func__ << " VEA is already initialized";
+ std::move(success_callback).Run(false);
+ return;
+ }
+
if (!client) {
DLOG(ERROR) << __func__ << "null |client|";
std::move(success_callback).Run(false);