aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-wam/cef/files/chromium/0015-meta-browser-Avoid-capturing-structured-bindings.patch
diff options
context:
space:
mode:
authorRoger Zanoni <rzanoni@igalia.com>2023-10-22 01:07:31 +0000
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>2023-11-16 16:51:05 +0000
commit4a1b172ebda54d587db7ecfc61af5443d0c11d0d (patch)
treee5e39bfbda54a45d33bdd829cf7a3370ede2a88c /recipes-wam/cef/files/chromium/0015-meta-browser-Avoid-capturing-structured-bindings.patch
parentbcbfd0131bce06c11197d2eee84300897c1680a9 (diff)
[cef][wam] Make the recipe work with official chromium release tarballs
This change drops the chromium mirror repository that was being used for milestone 108 in favor of using the official release tarballs from https://commondatastorage.googleapis.com/chromium-browser-official in an effort to make it easier to upgrade the current chromium milestones (also to improve download and build times). Also, the current milestone is being upgraded from 108 to 118. Bug-AGL: SPEC-3872 Signed-off-by: Roger Zanoni <rzanoni@igalia.com> Change-Id: Iba4a94ef762d278864114c02bb9e36a308ff5a7a Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl-demo/+/29417 Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> ci-image-build: Jenkins Job builder account Tested-by: Jenkins Job builder account ci-image-boot-test: Jenkins Job builder account
Diffstat (limited to 'recipes-wam/cef/files/chromium/0015-meta-browser-Avoid-capturing-structured-bindings.patch')
-rw-r--r--recipes-wam/cef/files/chromium/0015-meta-browser-Avoid-capturing-structured-bindings.patch56
1 files changed, 56 insertions, 0 deletions
diff --git a/recipes-wam/cef/files/chromium/0015-meta-browser-Avoid-capturing-structured-bindings.patch b/recipes-wam/cef/files/chromium/0015-meta-browser-Avoid-capturing-structured-bindings.patch
new file mode 100644
index 000000000..7b612b84f
--- /dev/null
+++ b/recipes-wam/cef/files/chromium/0015-meta-browser-Avoid-capturing-structured-bindings.patch
@@ -0,0 +1,56 @@
+From a1c05a94dc5b999bf22f1beedf3e3a9468775775 Mon Sep 17 00:00:00 2001
+From: Max Ihlenfeldt <max@igalia.com>
+Date: Tue, 13 Jun 2023 15:48:12 +0000
+Subject: [PATCH 15/33] [meta-browser] Avoid capturing structured bindings
+
+Similar to https://crrev.com/c/4526976, this patch removes some uses of
+structured bindings that lead to compile errors when using older
+versions of clang (observed with clang 15).
+
+Upstream-Status: Inappropriate [specific to older versions of clang]
+Signed-off-by: Max Ihlenfeldt <max@igalia.com>
+---
+ .../service_worker/service_worker_context_wrapper.cc | 3 ++-
+ media/base/cdm_promise_adapter.cc | 8 ++++----
+ 2 files changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/content/browser/service_worker/service_worker_context_wrapper.cc b/content/browser/service_worker/service_worker_context_wrapper.cc
+index 3267cdb340819..de88ef7e565cb 100644
+--- a/content/browser/service_worker/service_worker_context_wrapper.cc
++++ b/content/browser/service_worker/service_worker_context_wrapper.cc
+@@ -1412,9 +1412,10 @@ void ServiceWorkerContextWrapper::MaybeProcessPendingWarmUpRequest() {
+ auto [document_url, key, callback] = std::move(*request);
+
+ DCHECK(document_url.is_valid());
++ auto document_url_spec = document_url.spec();
+ TRACE_EVENT1("ServiceWorker",
+ "ServiceWorkerContextWrapper::MaybeProcessPendingWarmUpRequest",
+- "document_url", document_url.spec());
++ "document_url", document_url_spec);
+
+ context_core_->registry()->FindRegistrationForClientUrl(
+ ServiceWorkerRegistry::Purpose::kNotForNavigation,
+diff --git a/media/base/cdm_promise_adapter.cc b/media/base/cdm_promise_adapter.cc
+index f013809a62e25..144809b9696c3 100644
+--- a/media/base/cdm_promise_adapter.cc
++++ b/media/base/cdm_promise_adapter.cc
+@@ -94,12 +94,12 @@ void CdmPromiseAdapter::RejectPromise(uint32_t promise_id,
+ void CdmPromiseAdapter::Clear(ClearReason reason) {
+ // Reject all outstanding promises.
+ DCHECK(thread_checker_.CalledOnValidThread());
+- for (auto& [promise_id, promise] : promises_) {
++ for (auto& promise : promises_) {
+ TRACE_EVENT_NESTABLE_ASYNC_END1(
+- "media", "CdmPromise", TRACE_ID_WITH_SCOPE("CdmPromise", promise_id),
++ "media", "CdmPromise", TRACE_ID_WITH_SCOPE("CdmPromise", promise.first),
+ "status", "cleared");
+- promise->reject(CdmPromise::Exception::INVALID_STATE_ERROR,
+- ToSystemCode(reason), "Operation aborted.");
++ promise.second->reject(CdmPromise::Exception::INVALID_STATE_ERROR,
++ ToSystemCode(reason), "Operation aborted.");
+ }
+ promises_.clear();
+ }
+--
+2.42.1
+