- update to 111.0.5563.50

- system freetype on fedora > 36
This commit is contained in:
Than Ngo 2023-03-06 16:24:25 +01:00
parent c31aa162c2
commit c86221443c
22 changed files with 38 additions and 3224 deletions

View File

@ -1,31 +0,0 @@
diff -up chromium-105.0.5195.52/third_party/wayland/src/src/wayland-client-core.h.old-wayland chromium-105.0.5195.52/third_party/wayland/src/src/wayland-client-core.h
--- chromium-105.0.5195.52/third_party/wayland/src/src/wayland-client-core.h.old-wayland 2022-09-01 19:36:06.099483374 +0000
+++ chromium-105.0.5195.52/third_party/wayland/src/src/wayland-client-core.h 2022-09-01 22:09:56.523353619 +0000
@@ -119,9 +119,27 @@ struct wl_display;
*/
struct wl_event_queue;
+/** Destroy proxy after marshalling
+ * @ingroup wl_proxy
+ */
+#define WL_MARSHAL_FLAG_DESTROY (1 << 0)
+
void
wl_event_queue_destroy(struct wl_event_queue *queue);
+struct wl_proxy *
+wl_proxy_marshal_flags(struct wl_proxy *proxy, uint32_t opcode,
+ const struct wl_interface *interface,
+ uint32_t version,
+ uint32_t flags, ...);
+
+struct wl_proxy *
+wl_proxy_marshal_array_flags(struct wl_proxy *proxy, uint32_t opcode,
+ const struct wl_interface *interface,
+ uint32_t version,
+ uint32_t flags,
+ union wl_argument *args);
+
void
wl_proxy_marshal(struct wl_proxy *p, uint32_t opcode, ...);

View File

@ -1,41 +0,0 @@
From 3e1e86ac882ae0ce4b9ec50834a4ff8becd912ab Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Mon, 19 Dec 2022 16:59:46 +0000
Subject: [PATCH] GCC: move pragmas in blink::CanvasResourceProvider
GCC does not allow using #pragma inside an enum.
Bug: 819294
Change-Id: I637b5a616b080d17bb719aae9ec8cf06d0f8c464
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4111848
Reviewed-by: Stephen Chenney <schenney@chromium.org>
Commit-Queue: Stephan Hartmann <stha09@googlemail.com>
Cr-Commit-Position: refs/heads/main@{#1084983}
---
diff --git a/third_party/blink/renderer/platform/graphics/canvas_resource_provider.h b/third_party/blink/renderer/platform/graphics/canvas_resource_provider.h
index e898397f..214ab01 100644
--- a/third_party/blink/renderer/platform/graphics/canvas_resource_provider.h
+++ b/third_party/blink/renderer/platform/graphics/canvas_resource_provider.h
@@ -68,6 +68,8 @@
public:
// These values are persisted to logs. Entries should not be renumbered and
// numeric values should never be reused.
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
enum ResourceProviderType {
kTexture [[deprecated]] = 0,
kBitmap = 1,
@@ -79,11 +81,9 @@
kPassThrough = 7,
kSwapChain = 8,
kSkiaDawnSharedImage [[deprecated]] = 9,
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
kMaxValue = kSkiaDawnSharedImage,
-#pragma GCC diagnostic pop
};
+#pragma GCC diagnostic pop
// The following parameters attempt to reach a compromise between not flushing
// too often, and not accumulating an unreasonable backlog. Flushing too

View File

@ -1,41 +0,0 @@
From b4e56d22275cae5a910463a966a96345430a83ea Mon Sep 17 00:00:00 2001
From: Ivan Murashov <ivan.murashov@lge.com>
Date: Sat, 17 Dec 2022 12:06:01 +0000
Subject: [PATCH] libstdc++: Don't use const members in std::vector in password_manager::CredentialUIEntry
Otherwise build fails when building with use_custom_libcxx=false.
The error example:
std::vector must have a non-const, non-volatile value_type
Implementation of std::vector in libstdc++ does not allow const.
Bug: 957519
Change-Id: I089de2d52df25138d74dbf01fdf61d6301b4d871
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4111037
Reviewed-by: Mohamed Amir Yosef <mamir@chromium.org>
Commit-Queue: Mohamed Amir Yosef <mamir@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1084697}
---
diff --git a/components/password_manager/core/browser/ui/credential_ui_entry.cc b/components/password_manager/core/browser/ui/credential_ui_entry.cc
index 1e0766a..a9a34f7 100644
--- a/components/password_manager/core/browser/ui/credential_ui_entry.cc
+++ b/components/password_manager/core/browser/ui/credential_ui_entry.cc
@@ -97,7 +97,7 @@
// For cases when the notes differ within grouped passwords (e.g: a
// credential exists in both account and profile stores), respective notes
// should be concatenated and linebreak used as a delimiter.
- std::vector<const std::u16string> notes_with_duplicates;
+ std::vector<std::u16string> notes_with_duplicates;
for (const auto& form : forms) {
// Only notes with an empty `unique_display_name` are supported in the
// settings UI.
@@ -109,7 +109,7 @@
}
auto unique_notes =
base::MakeFlatSet<std::u16string>(std::move(notes_with_duplicates));
- note = base::JoinString(std::vector<const std::u16string>(
+ note = base::JoinString(std::vector<std::u16string>(
unique_notes.begin(), unique_notes.end()),
u"\n");

View File

@ -1,37 +0,0 @@
From 795c311aae4b718585bc6194189f061000c823a1 Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Fri, 23 Dec 2022 14:28:55 +0000
Subject: [PATCH] libstdc++: fix narrowing in blink::DarkModeLABColorSpace
Clang-14 errors out with narrowing from double to float. Use std::pow
instead.
---
.../renderer/platform/graphics/dark_mode_lab_color_space.h | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/third_party/blink/renderer/platform/graphics/dark_mode_lab_color_space.h b/third_party/blink/renderer/platform/graphics/dark_mode_lab_color_space.h
index 999c3e5..c18ea7b 100644
--- a/third_party/blink/renderer/platform/graphics/dark_mode_lab_color_space.h
+++ b/third_party/blink/renderer/platform/graphics/dark_mode_lab_color_space.h
@@ -125,7 +125,7 @@ class DarkModeLABColorSpace {
// https://en.wikipedia.org/wiki/CIELAB_color_space#Reverse_transformation.
SkV3 FromXYZ(const SkV3& v) const {
auto f = [](float x) {
- return x > kSigma3 ? pow(x, 1.0f / 3.0f)
+ return x > kSigma3 ? std::pow(x, 1.0f / 3.0f)
: x / (3 * kSigma2) + 4.0f / 29.0f;
};
@@ -145,7 +145,8 @@ class DarkModeLABColorSpace {
// https://en.wikipedia.org/wiki/CIELAB_color_space#Forward_transformation.
SkV3 ToXYZ(const SkV3& lab) const {
auto invf = [](float x) {
- return x > kSigma ? pow(x, 3.0f) : 3.0f * kSigma2 * (x - 4.0f / 29.0f);
+ return x > kSigma ? std::pow(x, 3.0f)
+ : 3.0f * kSigma2 * (x - 4.0f / 29.0f);
};
SkV3 v = {Clamp(lab.x, 0.0f, 100.0f), Clamp(lab.y, -128.0f, 128.0f),
--
2.38.2

View File

@ -1,30 +0,0 @@
From 63027c62eaa1b6c5b0d2762a511f1611b15d3728 Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Mon, 19 Dec 2022 13:56:17 +0000
Subject: [PATCH] libstdc++: fix incomplete type of download::InProgressDownloadManager
Destructor of std::unique_ptr in libstdc++ uses sizeof() which
requires full definition of download::InProgressDownloadManager
for return type of content::BrowserContext::
RetrieveInProgressDownloadManager().
Bug: 957519
Change-Id: If99aa8d52238bacb1cb559a300e14ed3a05b7297
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4111526
Reviewed-by: Bo Liu <boliu@chromium.org>
Commit-Queue: Stephan Hartmann <stha09@googlemail.com>
Cr-Commit-Position: refs/heads/main@{#1084924}
---
diff --git a/content/browser/browser_context.cc b/content/browser/browser_context.cc
index 6180969..22e9dbb 100644
--- a/content/browser/browser_context.cc
+++ b/content/browser/browser_context.cc
@@ -30,6 +30,7 @@
#include "base/unguessable_token.h"
#include "build/build_config.h"
#include "build/chromeos_buildflags.h"
+#include "components/download/public/common/in_progress_download_manager.h"
#include "components/services/storage/privileged/mojom/indexed_db_control.mojom.h"
#include "content/browser/blob_storage/chrome_blob_storage_context.h"
#include "content/browser/browser_context_impl.h"

View File

@ -1,29 +0,0 @@
From 07f0a87e4409f27854b3a1d17f270a3497f38947 Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Mon, 19 Dec 2022 19:07:37 +0000
Subject: [PATCH] GCC: use fabsf in ui::NativeThemeBase::OutlineColor
Template deduction fails for base::clamp, because return type of
fabs is double and all other parameters are float.
Bug: 819294
Change-Id: I34f1c9c99d13f69097d899bfcb0526cbdf4fe1c1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4110869
Reviewed-by: Peter Kasting <pkasting@chromium.org>
Commit-Queue: Stephan Hartmann <stha09@googlemail.com>
Cr-Commit-Position: refs/heads/main@{#1085034}
---
diff --git a/ui/native_theme/native_theme_base.cc b/ui/native_theme/native_theme_base.cc
index 169c60c..36db49a 100644
--- a/ui/native_theme/native_theme_base.cc
+++ b/ui/native_theme/native_theme_base.cc
@@ -1336,7 +1336,7 @@
// The following code has been tested to look OK with all of the
// default GTK themes.
SkScalar min_diff = base::clamp((hsv1[1] + hsv2[1]) * 1.2f, 0.28f, 0.5f);
- SkScalar diff = base::clamp(fabs(hsv1[2] - hsv2[2]) / 2, min_diff, 0.5f);
+ SkScalar diff = base::clamp(fabsf(hsv1[2] - hsv2[2]) / 2, min_diff, 0.5f);
if (hsv1[2] + hsv2[2] > 1.0)
diff = -diff;

View File

@ -1,26 +0,0 @@
From c69b818a9fce2bf0fb81b280d6f4cc15e6fdb8af Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Fri, 16 Dec 2022 17:13:43 +0000
Subject: [PATCH] GCC: fix incomplete type of gl::Presenter
GCC requires full definition of gl::Presenter for return type
of gl::GLOzoneEGL::CreateGLContext() with base::scoped_refptr.
---
ui/ozone/common/gl_ozone_egl.cc | 1 +
1 file changed, 1 insertion(+)
diff --git a/ui/ozone/common/gl_ozone_egl.cc b/ui/ozone/common/gl_ozone_egl.cc
index 9b1d37e..e745dd7 100644
--- a/ui/ozone/common/gl_ozone_egl.cc
+++ b/ui/ozone/common/gl_ozone_egl.cc
@@ -13,6 +13,7 @@
#include "ui/gl/gl_share_group.h"
#include "ui/gl/gl_surface.h"
#include "ui/gl/gl_utils.h"
+#include "ui/gl/presenter.h"
namespace ui {
--
2.37.4

View File

@ -1,74 +0,0 @@
From 200fc7c3ec95bc86f6afb55ca3c691e923463104 Mon Sep 17 00:00:00 2001
From: Leonid Baraz <lbaraz@chromium.org>
Date: Mon, 19 Dec 2022 21:46:04 +0000
Subject: [PATCH] GCC: fix usage of decltype in reporting::StorageQueue
GCC does not allow to use decltype for the default value of
a function parameter.
Bug: 819294
Change-Id: I7ebb255634375ce889933f8b67acb10f0e56ca8d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4111548
Reviewed-by: Leonid Baraz <lbaraz@chromium.org>
Commit-Queue: Leonid Baraz <lbaraz@chromium.org>
Reviewed-by: Hong Xu <xuhong@google.com>
Cr-Commit-Position: refs/heads/main@{#1085129}
---
diff --git a/components/reporting/storage/storage_queue.cc b/components/reporting/storage/storage_queue.cc
index c546d55a..49e0f2c 100644
--- a/components/reporting/storage/storage_queue.cc
+++ b/components/reporting/storage/storage_queue.cc
@@ -203,7 +203,6 @@
encryption_module_(encryption_module),
compression_module_(compression_module) {
DETACH_FROM_SEQUENCE(storage_queue_sequence_checker_);
- DCHECK(write_contexts_queue_.empty());
}
StorageQueue::~StorageQueue() {
@@ -2133,9 +2132,7 @@
}
void StorageQueue::TestInjectErrorsForOperation(
- base::RepeatingCallback<
- Status(test::StorageQueueOperationKind operation_kind, int64_t)>
- handler) {
+ test::ErrorInjectionHandlerType handler) {
test_injection_handler_ = handler;
}
diff --git a/components/reporting/storage/storage_queue.h b/components/reporting/storage/storage_queue.h
index 39edd8b..04d5f9f 100644
--- a/components/reporting/storage/storage_queue.h
+++ b/components/reporting/storage/storage_queue.h
@@ -52,6 +52,9 @@
kWriteLowDiskSpace,
};
+using ErrorInjectionHandlerType =
+ base::RepeatingCallback<Status(test::StorageQueueOperationKind, int64_t)>;
+
} // namespace test
// Storage queue represents single queue of data to be collected and stored
@@ -142,8 +145,7 @@
// can be returned as a resulting operation status too.
// If `handler` is null, error injections is disabled.
void TestInjectErrorsForOperation(
- base::RepeatingCallback<Status(test::StorageQueueOperationKind, int64_t)>
- handler = decltype(handler)());
+ test::ErrorInjectionHandlerType handler = base::NullCallback());
// Access queue options.
const QueueOptions& options() const { return options_; }
@@ -492,8 +494,7 @@
// Test only: records callback to be invoked. It will be called with operation
// kind and seq id, and will return Status (non-OK status indicates the
// failure to be injected). In production code must be null.
- base::RepeatingCallback<Status(test::StorageQueueOperationKind, int64_t)>
- test_injection_handler_;
+ test::ErrorInjectionHandlerType test_injection_handler_{base::NullCallback()};
// Weak pointer factory (must be last member in class).
base::WeakPtrFactory<StorageQueue> weakptr_factory_{this};

View File

@ -1,28 +0,0 @@
From da8029438ea8f00a154cb6a1bbc8243de39690de Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Sun, 18 Dec 2022 22:11:58 +0000
Subject: [PATCH] GCC: remove redundant template parameter from SyncIterator
GCC 12 in C++20 mode does not allow this anymore.
Bug: 819294
Change-Id: I6b22d3919f08fb72a5b1d69eea59c6e95259c16f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4111547
Commit-Queue: Stephan Hartmann <stha09@googlemail.com>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1084808}
---
diff --git a/third_party/blink/renderer/bindings/scripts/bind_gen/sync_iterator.py b/third_party/blink/renderer/bindings/scripts/bind_gen/sync_iterator.py
index 1d67fa2..9cec5094 100644
--- a/third_party/blink/renderer/bindings/scripts/bind_gen/sync_iterator.py
+++ b/third_party/blink/renderer/bindings/scripts/bind_gen/sync_iterator.py
@@ -36,7 +36,7 @@
member_initializer_list=[
"${base_class_name}(source, kind)",
]),
- CxxFuncDeclNode(name="~${class_name}",
+ CxxFuncDeclNode(name="~SyncIterator",
arg_decls=[],
return_type="",
override=True,

View File

@ -1,94 +0,0 @@
From df728d2e2fe8284316ed083c5a210bca1e50986e Mon Sep 17 00:00:00 2001
From: Jose Dapena Paz <jdapena@igalia.com>
Date: Mon, 16 Jan 2023 12:53:21 +0100
Subject: [PATCH] GCC: fix distributed point functions build in ARM64 with SVE
SVE build is broken in ARM64, because distributed_point_functions
is trying to use operator& and operator|.
Bug:819294
Change-Id: I465efa475ed59031a2cfaf4172ef9fbd8bb05050
---
dpf/internal/evaluate_prg_hwy.cc | 34 ++++++++++++++------------------
1 file changed, 15 insertions(+), 19 deletions(-)
diff --git a/dpf/internal/evaluate_prg_hwy.cc b/dpf/internal/evaluate_prg_hwy.cc
index 3d743f4..a1dd8e0 100644
--- a//third_party/distributed_point_functions/code/dpf/internal/evaluate_prg_hwy.cc
+++ b//third_party/distributed_point_functions/code/dpf/internal/evaluate_prg_hwy.cc
@@ -124,14 +124,14 @@ auto IsBitSet(D d, const V input, int index) {
// Compute input AND index_64 on 64-bit integers.
auto input_64 = hn::BitCast(d64, input);
- input_64 &= index_64;
+ input_64 = hn::And(input_64, index_64);
// Take the OR of every two adjacent 64-bit integers. This ensures that each
// half of an 128-bit block is nonzero iff at least one half was nonzero.
- input_64 |= hn::Shuffle01(input_64);
+ input_64 = hn::Or(input_64, hn::Shuffle01(input_64));
// Compute a 64-bit mask that checks which integers are nonzero.
- return input_64 != hn::Zero(d64);
+ return hn::Ne(input_64, hn::Zero(d64));
}
// Dummy struct to get HWY_ALIGN as a number, for testing if an array of
@@ -236,24 +236,20 @@ absl::Status EvaluateSeedsHwy(
// Apply correction.
const auto correction_seed = hn::LoadDup128(
d64, reinterpret_cast<const uint64_t*>(correction_seeds + j));
- vec_0 ^=
- hn::BitCast(d8, hn::IfThenElseZero(control_mask_0, correction_seed));
- vec_1 ^=
- hn::BitCast(d8, hn::IfThenElseZero(control_mask_1, correction_seed));
- vec_2 ^=
- hn::BitCast(d8, hn::IfThenElseZero(control_mask_2, correction_seed));
- vec_3 ^=
- hn::BitCast(d8, hn::IfThenElseZero(control_mask_3, correction_seed));
+ vec_0 = hn::Xor(vec_0, hn::BitCast(d8, hn::IfThenElseZero(control_mask_0, correction_seed)));
+ vec_1 = hn::Xor(vec_1, hn::BitCast(d8, hn::IfThenElseZero(control_mask_1, correction_seed)));
+ vec_2 = hn::Xor(vec_2, hn::BitCast(d8, hn::IfThenElseZero(control_mask_2, correction_seed)));
+ vec_3 = hn::Xor(vec_3, hn::BitCast(d8, hn::IfThenElseZero(control_mask_3, correction_seed)));
// Extract control bit for next level.
const auto next_control_mask_0 = IsBitSet(d8, vec_0, 0);
const auto next_control_mask_1 = IsBitSet(d8, vec_1, 0);
const auto next_control_mask_2 = IsBitSet(d8, vec_2, 0);
const auto next_control_mask_3 = IsBitSet(d8, vec_3, 0);
- vec_0 &= clear_lowest_bit;
- vec_1 &= clear_lowest_bit;
- vec_2 &= clear_lowest_bit;
- vec_3 &= clear_lowest_bit;
+ vec_0 = hn::And(vec_0, clear_lowest_bit);
+ vec_1 = hn::And(vec_1, clear_lowest_bit);
+ vec_2 = hn::And(vec_2, clear_lowest_bit);
+ vec_3 = hn::And(vec_3, clear_lowest_bit);
// Perform control bit correction.
const auto correction_control_mask_left =
@@ -321,10 +317,10 @@ absl::Status EvaluateSeedsHwy(
// Apply correction.
const auto correction_seed = hn::LoadDup128(
d64, reinterpret_cast<const uint64_t*>(correction_seeds + j));
- vec ^= hn::BitCast(d8, hn::IfThenElseZero(control_mask, correction_seed));
+ vec = hn::Xor(vec, hn::BitCast(d8, hn::IfThenElseZero(control_mask, correction_seed)));
// Extract control bit for next level.
const auto next_control_mask = IsBitSet(d8, vec, 0);
- vec &= clear_lowest_bit;
+ vec = hn::And(vec, clear_lowest_bit);
// Perform control bit correction.
const auto correction_control_mask_left =
@@ -376,9 +372,9 @@ absl::Status EvaluateSeedsHwy(
// Perform seed correction.
const auto correction_seed = hn::LoadDup128(
d64, reinterpret_cast<const uint64_t*>(correction_seeds + j));
- vec ^= hn::BitCast(d8, hn::IfThenElseZero(control_mask, correction_seed));
+ vec = hn::Xor(vec, hn::BitCast(d8, hn::IfThenElseZero(control_mask, correction_seed)));
const auto next_control_mask = IsBitSet(d8, vec, 0);
- vec &= clear_lowest_bit;
+ vec = hn::And(vec, clear_lowest_bit);
const auto correction_control_mask_left =
correction_controls_left[j] ? mask_all_one : mask_all_zero;
const auto correction_control_mask_right =

View File

@ -23,6 +23,25 @@ index 758d0bf..8c91146 100644
Lenny Khazan <lenny.khazan@gmail.com>
Leo Wolf <jclw@ymail.com>
Leon Han <leon.han@intel.com>
diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc
index 85c3931..2b0c2a84 100644
--- a/chrome/common/chrome_features.cc
+++ b/chrome/common/chrome_features.cc
@@ -1430,12 +1430,12 @@
BASE_FEATURE(kWebUIDarkMode,
"WebUIDarkMode",
#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || \
- BUILDFLAG(IS_CHROMEOS)
+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)
base::FEATURE_ENABLED_BY_DEFAULT
#else
base::FEATURE_DISABLED_BY_DEFAULT
#endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) ||
- // BUILDFLAG(IS_CHROMEOS)
+ // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)
);
#if BUILDFLAG(IS_CHROMEOS_ASH)
diff --git a/ui/gtk/native_theme_gtk.cc b/ui/gtk/native_theme_gtk.cc
index a60d6e3..1200a80 100644
--- a/ui/gtk/native_theme_gtk.cc

View File

@ -1,28 +0,0 @@
From 3084e834a211e85f6a17e6f8dceb6b44117211d2 Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Wed, 21 Dec 2022 19:22:46 +0000
Subject: [PATCH] GCC: fix conflicting type for kCustomizeChromeColors
GCC cannot match auto with previous declaration.
Bug: 819294
Change-Id: Ie648daaf264fb2ea177ac46c8a510d481f6fa2f4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4110870
Reviewed-by: Tibor Goldschwendt <tiborg@chromium.org>
Commit-Queue: Stephan Hartmann <stha09@googlemail.com>
Cr-Commit-Position: refs/heads/main@{#1086011}
---
diff --git a/chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_colors.cc b/chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_colors.cc
index 2fccadb..383c9e5 100644
--- a/chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_colors.cc
+++ b/chrome/browser/ui/webui/side_panel/customize_chrome/customize_chrome_colors.cc
@@ -31,5 +31,6 @@
} // namespace
-const auto kCustomizeChromeColors = MakeCustomizeChromeColors(
- std::make_index_sequence<std::size(kCustomizeChromeColorIds)>{});
+const decltype(kCustomizeChromeColors) kCustomizeChromeColors =
+ MakeCustomizeChromeColors(
+ std::make_index_sequence<std::size(kCustomizeChromeColorIds)>{});

View File

@ -1,11 +0,0 @@
diff -up chromium-110.0.5481.177/base/memory/ref_counted.h.me chromium-110.0.5481.177/base/memory/ref_counted.h
--- chromium-110.0.5481.177/base/memory/ref_counted.h.me 2023-02-23 13:34:33.174817255 -0500
+++ chromium-110.0.5481.177/base/memory/ref_counted.h 2023-02-23 13:42:28.646052469 -0500
@@ -6,6 +6,7 @@
#define BASE_MEMORY_REF_COUNTED_H_
#include <stddef.h>
+#include <limits>
#include <utility>

View File

@ -1,31 +0,0 @@
From bd3af998439424886c641279b6f9bb6e950c7142 Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Sun, 18 Dec 2022 16:12:29 +0000
Subject: [PATCH] GCC: make raw_ptr::operator bool constexpr
Required because autofill::internal::FormForest uses it in
a constexpr method.
Bug: 819294
Change-Id: Ib2258c9d98c2e7f88ad192b517b487f834a87481
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4110924
Reviewed-by: Bartek Nowierski <bartekn@chromium.org>
Commit-Queue: Stephan Hartmann <stha09@googlemail.com>
Cr-Commit-Position: refs/heads/main@{#1084785}
---
diff --git a/base/memory/raw_ptr.h b/base/memory/raw_ptr.h
index 4191f0e..a22f64b7 100644
--- a/base/memory/raw_ptr.h
+++ b/base/memory/raw_ptr.h
@@ -1301,7 +1301,9 @@
// possible, so use it only if absolutely necessary (e.g. for const_cast).
PA_ALWAYS_INLINE T* get() const { return GetForExtraction(); }
- explicit PA_ALWAYS_INLINE operator bool() const { return !!wrapped_ptr_; }
+ constexpr explicit PA_ALWAYS_INLINE operator bool() const {
+ return !!wrapped_ptr_;
+ }
template <typename U = T,
typename Unused = std::enable_if_t<

View File

@ -1,34 +0,0 @@
From 740d1102e3fdaaed5441b5656205df9d7e422c3a Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Tue, 20 Dec 2022 20:41:12 +0000
Subject: [PATCH] GCC: add cast for vector types in url/url_canon_internal.cc
GCC requires lax vector conversion for converting __vector(16) to
SIMD types. Add explicit cast instead.
Bug: 819294
Change-Id: Icfc9d3586350af469bfd9d83b355d94806430c43
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4110786
Commit-Queue: Stephan Hartmann <stha09@googlemail.com>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1085617}
---
diff --git a/url/url_canon_internal.cc b/url/url_canon_internal.cc
index e4f7949..f621920 100644
--- a/url/url_canon_internal.cc
+++ b/url/url_canon_internal.cc
@@ -49,11 +49,11 @@
auto mask = b >= 0x24 && b <= 0x7e && b != 0x27 && b != 0x3c && b != 0x3e;
#ifdef __SSE2__
- if (_mm_movemask_epi8(mask) != 0xffff) {
+ if (_mm_movemask_epi8(reinterpret_cast<__m128i>(mask)) != 0xffff) {
return i;
}
#else
- if (vminvq_u8(mask) == 0) {
+ if (vminvq_u8(reinterpret_cast<uint8x16_t>(mask)) == 0) {
return i;
}
#endif

View File

@ -1,33 +0,0 @@
From 15d123009b7e987e946309cd5724ae17f376bd16 Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Sun, 18 Dec 2022 16:26:02 +0100
Subject: [PATCH] GCC: fix selection of IMMEDIATE_CRASH
immediate_crash.h still uses V8_CC_GCC define to determine which
IMMEDIATE_CRASH macro is used. This should be V8_CC_GNU instead.
Otherwise weird compile errors are happening with turboshaft.
Bug: chromium:819294
Change-Id: Id77fe7406ae16a804e1e466844f81d6c728ec008
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4111849
Commit-Queue: Stephan Hartmann <stha09@googlemail.com>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#84923}
---
diff --git a/src/base/immediate-crash.h b/src/base/immediate-crash.h
index 770cb27..ce6240b 100644
--- a/v8/src/base/immediate-crash.h
+++ b/v8/src/base/immediate-crash.h
@@ -140,9 +140,9 @@
[] { TRAP_SEQUENCE_(); }(); \
} while (false)
-#endif // !V8_CC_GCC
+#endif // !V8_CC_GNU
-#if defined(__clang__) || V8_CC_GCC
+#if defined(__clang__) || V8_CC_GNU
// __builtin_unreachable() hints to the compiler that this is noreturn and can
// be packed in the function epilogue.

File diff suppressed because it is too large Load Diff

View File

@ -1,198 +0,0 @@
From 916641c08de44e0a915df223d55781c6c912717c Mon Sep 17 00:00:00 2001
From: Nikolaos Papaspyrou <nikolaos@chromium.org>
Date: Thu, 19 Jan 2023 13:43:10 +0100
Subject: [PATCH] [heap] Move the Stack object from ThreadLocalTop to Isolate
Stack information is thread-specific and, until now, it was stored in a
field in ThreadLocalTop. This CL moves stack information to the isolate
and makes sure to update the stack start whenever a main thread enters
the isolate. At the same time, the Stack object is refactored and
simplified.
As a side effect, after removing the Stack object, ThreadLocalTop
satisfies the std::standard_layout trait; this fixes some issues
observed with different C++ compilers.
Bug: v8:13630
Bug: v8:13257
Change-Id: I026a35af3bc6999a09b21f277756d4454c086343
(stripped tests)
---
diff --git a/src/execution/isolate.cc b/src/execution/isolate.cc
index 31536a1..22b8492 100644
--- a/v8/src/execution/isolate.cc
+++ b/v8/src/execution/isolate.cc
@@ -3069,21 +3069,23 @@
void Isolate::RecordStackSwitchForScanning() {
Object current = root(RootIndex::kActiveContinuation);
DCHECK(!current.IsUndefined());
- thread_local_top()->stack_.ClearStackSegments();
- wasm::StackMemory* stack = Managed<wasm::StackMemory>::cast(
- WasmContinuationObject::cast(current).stack())
- .get()
- .get();
+ stack().ClearStackSegments();
+ wasm::StackMemory* wasm_stack =
+ Managed<wasm::StackMemory>::cast(
+ WasmContinuationObject::cast(current).stack())
+ .get()
+ .get();
current = WasmContinuationObject::cast(current).parent();
- heap()->SetStackStart(reinterpret_cast<void*>(stack->base()));
+ heap()->SetStackStart(reinterpret_cast<void*>(wasm_stack->base()));
// We don't need to add all inactive stacks. Only the ones in the active chain
// may contain cpp heap pointers.
while (!current.IsUndefined()) {
auto cont = WasmContinuationObject::cast(current);
- auto* stack = Managed<wasm::StackMemory>::cast(cont.stack()).get().get();
- thread_local_top()->stack_.AddStackSegment(
- reinterpret_cast<const void*>(stack->base()),
- reinterpret_cast<const void*>(stack->jmpbuf()->sp));
+ auto* wasm_stack =
+ Managed<wasm::StackMemory>::cast(cont.stack()).get().get();
+ stack().AddStackSegment(
+ reinterpret_cast<const void*>(wasm_stack->base()),
+ reinterpret_cast<const void*>(wasm_stack->jmpbuf()->sp));
current = cont.parent();
}
}
@@ -3371,23 +3373,13 @@
Isolate* saved_isolate = isolate->TryGetCurrent();
SetIsolateThreadLocals(isolate, nullptr);
isolate->set_thread_id(ThreadId::Current());
- if (saved_isolate) {
- isolate->thread_local_top()->stack_ =
- std::move(saved_isolate->thread_local_top()->stack_);
- } else {
- isolate->heap()->SetStackStart(base::Stack::GetStackStart());
- }
+ isolate->heap()->SetStackStart(base::Stack::GetStackStart());
bool owns_shared_isolate = isolate->owns_shared_isolate_;
Isolate* maybe_shared_isolate = isolate->shared_isolate_;
isolate->Deinit();
- // Restore the saved isolate's stack.
- if (saved_isolate)
- saved_isolate->thread_local_top()->stack_ =
- std::move(isolate->thread_local_top()->stack_);
-
#ifdef DEBUG
non_disposed_isolates_--;
#endif // DEBUG
@@ -4652,6 +4644,10 @@
void Isolate::Enter() {
Isolate* current_isolate = nullptr;
PerIsolateThreadData* current_data = CurrentPerIsolateThreadData();
+
+ // Set the stack start for the main thread that enters the isolate.
+ heap()->SetStackStart(base::Stack::GetStackStart());
+
if (current_data != nullptr) {
current_isolate = current_data->isolate_;
DCHECK_NOT_NULL(current_isolate);
diff --git a/src/execution/isolate.h b/src/execution/isolate.h
index afc3d0b..415e476 100644
--- a/v8/src/execution/isolate.h
+++ b/v8/src/execution/isolate.h
@@ -32,6 +32,7 @@
#include "src/execution/stack-guard.h"
#include "src/handles/handles.h"
#include "src/handles/traced-handles.h"
+#include "src/heap/base/stack.h"
#include "src/heap/factory.h"
#include "src/heap/heap.h"
#include "src/heap/read-only-heap.h"
@@ -2028,6 +2029,8 @@
SimulatorData* simulator_data() { return simulator_data_; }
#endif
+ ::heap::base::Stack& stack() { return stack_; }
+
#ifdef V8_ENABLE_WEBASSEMBLY
wasm::StackMemory*& wasm_stacks() { return wasm_stacks_; }
// Update the thread local's Stack object so that it is aware of the new stack
@@ -2526,6 +2529,9 @@
// The mutex only guards adding pages, the retrieval is signal safe.
base::Mutex code_pages_mutex_;
+ // Stack information for the main thread.
+ ::heap::base::Stack stack_;
+
#ifdef V8_ENABLE_WEBASSEMBLY
wasm::StackMemory* wasm_stacks_;
#endif
diff --git a/src/execution/thread-local-top.cc b/src/execution/thread-local-top.cc
index c115ae0..05cc20b 100644
--- a/v8/src/execution/thread-local-top.cc
+++ b/v8/src/execution/thread-local-top.cc
@@ -37,7 +37,6 @@
current_embedder_state_ = nullptr;
failed_access_check_callback_ = nullptr;
thread_in_wasm_flag_address_ = kNullAddress;
- stack_ = ::heap::base::Stack();
}
void ThreadLocalTop::Initialize(Isolate* isolate) {
@@ -45,12 +44,8 @@
isolate_ = isolate;
thread_id_ = ThreadId::Current();
#if V8_ENABLE_WEBASSEMBLY
- stack_.SetStackStart(base::Stack::GetStackStart(),
- v8_flags.experimental_wasm_stack_switching);
thread_in_wasm_flag_address_ = reinterpret_cast<Address>(
trap_handler::GetThreadInWasmThreadLocalAddress());
-#else
- stack_.SetStackStart(base::Stack::GetStackStart(), false);
#endif // V8_ENABLE_WEBASSEMBLY
#ifdef USE_SIMULATOR
simulator_ = Simulator::current(isolate);
diff --git a/src/execution/thread-local-top.h b/src/execution/thread-local-top.h
index 43fec0a..989c817 100644
--- a/v8/src/execution/thread-local-top.h
+++ b/v8/src/execution/thread-local-top.h
@@ -10,7 +10,6 @@
#include "include/v8-unwinder.h"
#include "src/common/globals.h"
#include "src/execution/thread-id.h"
-#include "src/heap/base/stack.h"
#include "src/objects/contexts.h"
#include "src/utils/utils.h"
@@ -30,7 +29,7 @@
// TODO(all): This is not particularly beautiful. We should probably
// refactor this to really consist of just Addresses and 32-bit
// integer fields.
- static constexpr uint32_t kSizeInBytes = 30 * kSystemPointerSize;
+ static constexpr uint32_t kSizeInBytes = 25 * kSystemPointerSize;
// Does early low-level initialization that does not depend on the
// isolate being present.
@@ -147,9 +146,6 @@
// Address of the thread-local "thread in wasm" flag.
Address thread_in_wasm_flag_address_;
-
- // Stack information.
- ::heap::base::Stack stack_;
};
} // namespace internal
diff --git a/src/heap/heap.cc b/src/heap/heap.cc
index f4b7da0..6efd486 100644
--- a/v8/src/heap/heap.cc
+++ b/v8/src/heap/heap.cc
@@ -5830,9 +5830,7 @@
#endif // V8_ENABLE_WEBASSEMBLY
}
-::heap::base::Stack& Heap::stack() {
- return isolate_->thread_local_top()->stack_;
-}
+::heap::base::Stack& Heap::stack() { return isolate_->stack(); }
void Heap::StartTearDown() {
// Finish any ongoing sweeping to avoid stray background tasks still accessing

View File

@ -1,24 +0,0 @@
diff -up chromium-94.0.4606.71/ui/views/animation/ink_drop_host_view.h.InkDropHost-crash chromium-94.0.4606.71/ui/views/animation/ink_drop_host_view.h
--- chromium-94.0.4606.71/ui/views/animation/ink_drop_host_view.h.InkDropHost-crash 2021-10-05 16:04:46.313586509 -0400
+++ chromium-94.0.4606.71/ui/views/animation/ink_drop_host_view.h 2021-10-05 16:05:12.213732558 -0400
@@ -228,6 +228,11 @@ class VIEWS_EXPORT InkDropHost {
// Used to observe View and inform the InkDrop of host-transform changes.
ViewLayerTransformObserver host_view_transform_observer_;
+ // Declared before |ink_drop_|, because InkDropImpl may call
+ // RemoveInkDropLayer on partly destructed InkDropHost. In
+ // that case |ink_drop_mask_| must be still valid.
+ std::unique_ptr<views::InkDropMask> ink_drop_mask_;
+
// Should not be accessed directly. Use GetInkDrop() instead.
std::unique_ptr<InkDrop> ink_drop_;
@@ -249,8 +254,6 @@ class VIEWS_EXPORT InkDropHost {
int ink_drop_small_corner_radius_ = 2;
int ink_drop_large_corner_radius_ = 4;
- std::unique_ptr<views::InkDropMask> ink_drop_mask_;
-
base::RepeatingCallback<std::unique_ptr<InkDrop>()> create_ink_drop_callback_;
base::RepeatingCallback<std::unique_ptr<InkDropRipple>()>
create_ink_drop_ripple_callback_;

View File

@ -1,137 +0,0 @@
commit e775ac4770bb1e5dfbfe22c5b56752ed4a2317c5
Author: Hirokazu Honda <hiroh@chromium.org>
Date: Tue Jan 17 17:54:02 2023 +0000
Revert "media/gpu/v4l2VEA,IP: Workaround to USERPTR API against read-only buf"
This reverts commit 203fdd03a4317f2eac57161ee101515a82df704f.
Reason for revert: This workaround is no longer required because of
the kernel patch was reverted.
Original change's description:
> media/gpu/v4l2VEA,IP: Workaround to USERPTR API against read-only buf
>
> VideoFrame fed in VEA::Encode() is read-only since R107 if the
> VideoFrame has a shared memory. V4L2VideoEncodeAccelerator fails
> because VIDOC_QBUF with USERPTR buffer fails if the pointers
> references a read-only buffer.
> The USERPTR API issue is apparently to be fixed by a kernel side.
> In the meantime, this CL adds the workaround to the issue; the read
> only buffer is copied to a writable temporary buffer every Encode
> before VIDIOC_QBUF.
> Not that VideoFrame has a shared memory in the case of screen share
> because a camera stack produces GpuMemoryBuffer.
>
> Bug: b:243883312
> Test: video_encode_accelerator_tests on elm, kevin and trogdor
> Test: screen share in Google Meet on elm, kevin and trogdor
> Change-Id: I922d98eaf52f80d9cd6c3784a8544bffb1232856
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3891421
> Reviewed-by: Nathan Hebert <nhebert@chromium.org>
> Commit-Queue: Hirokazu Honda <hiroh@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1046659}
Bug: b:243883312, b:261660224
Change-Id: I6fe37276f2ebe8c8730cfd3dd766b04277b32a67
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4091205
Reviewed-by: Nathan Hebert <nhebert@chromium.org>
Commit-Queue: Hirokazu Honda <hiroh@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1093388}
diff --git a/media/gpu/v4l2/v4l2_image_processor_backend.cc b/media/gpu/v4l2/v4l2_image_processor_backend.cc
index dc72a4ac060a9..f3049f4546e2e 100644
--- a/media/gpu/v4l2/v4l2_image_processor_backend.cc
+++ b/media/gpu/v4l2/v4l2_image_processor_backend.cc
@@ -925,35 +925,16 @@ bool V4L2ImageProcessorBackend::EnqueueInputRecord(
switch (input_memory_type_) {
case V4L2_MEMORY_USERPTR: {
- VideoFrame& frame = *job_record->input_frame;
const size_t num_planes = V4L2Device::GetNumPlanesOfV4L2PixFmt(
input_config_.fourcc.ToV4L2PixFmt());
std::vector<void*> user_ptrs(num_planes);
- if (frame.storage_type() == VideoFrame::STORAGE_SHMEM) {
- // TODO(b/243883312): This copies the video frame to a writable buffer
- // since the USERPTR API requires writable permission. Remove this
- // workaround once the unreasonable permission is fixed.
- const size_t buffer_size = frame.shm_region()->GetSize();
- std::vector<uint8_t> writable_buffer(buffer_size);
- std::memcpy(writable_buffer.data(), frame.data(0), buffer_size);
- for (size_t i = 0; i < num_planes; ++i) {
- const std::intptr_t plane_offset =
- reinterpret_cast<std::intptr_t>(frame.data(i)) -
- reinterpret_cast<std::intptr_t>(frame.data(0));
- user_ptrs[i] = writable_buffer.data() + plane_offset;
- }
- job_record->input_frame->AddDestructionObserver(base::BindOnce(
- [](std::vector<uint8_t>) {}, std::move(writable_buffer)));
- } else {
- for (size_t i = 0; i < num_planes; ++i)
- user_ptrs[i] = frame.writable_data(i);
- }
-
for (size_t i = 0; i < num_planes; ++i) {
int bytes_used =
- VideoFrame::PlaneSize(frame.format(), i, input_config_.size)
+ VideoFrame::PlaneSize(job_record->input_frame->format(), i,
+ input_config_.size)
.GetArea();
buffer.SetPlaneBytesUsed(i, bytes_used);
+ user_ptrs[i] = const_cast<uint8_t*>(job_record->input_frame->data(i));
}
if (!std::move(buffer).QueueUserPtr(user_ptrs)) {
VPLOGF(1) << "Failed to queue a DMABUF buffer to input queue";
diff --git a/media/gpu/v4l2/v4l2_video_encode_accelerator.cc b/media/gpu/v4l2/v4l2_video_encode_accelerator.cc
index 56389ea3eec08..d452ba48a69e2 100644
--- a/media/gpu/v4l2/v4l2_video_encode_accelerator.cc
+++ b/media/gpu/v4l2/v4l2_video_encode_accelerator.cc
@@ -783,7 +783,7 @@ void V4L2VideoEncodeAccelerator::EncodeTask(scoped_refptr<VideoFrame> frame,
const bool is_expected_storage_type =
native_input_mode_
? frame->storage_type() == VideoFrame::STORAGE_GPU_MEMORY_BUFFER
- : frame->storage_type() == VideoFrame::STORAGE_SHMEM;
+ : frame->IsMappable();
if (!is_expected_storage_type) {
VLOGF(1) << "Unexpected storage: "
<< VideoFrame::StorageTypeToString(frame->storage_type());
@@ -1392,27 +1392,16 @@ bool V4L2VideoEncodeAccelerator::EnqueueInputRecord(
NOTIFY_ERROR(kPlatformFailureError);
}
- // TODO(b/243883312): This copies the video frame to a writable buffer
- // since the USERPTR API requires writable permission. Remove this
- // workaround once the unreasonable permission is fixed.
- const size_t buffer_size = frame->shm_region()->GetSize();
- std::vector<uint8_t> writable_buffer(buffer_size);
- std::memcpy(writable_buffer.data(), frame->data(0), buffer_size);
+ // The frame data is readable only and the driver doesn't actually write
+ // the buffer. But USRPTR buffer needs void*. So const_cast<> is required.
std::vector<void*> user_ptrs(num_planes);
for (size_t i = 0; i < num_planes; ++i) {
- const std::intptr_t plane_offset =
- reinterpret_cast<std::intptr_t>(frame->data(i)) -
- reinterpret_cast<std::intptr_t>(frame->data(0));
- user_ptrs[i] = writable_buffer.data() + plane_offset;
+ user_ptrs[i] = const_cast<uint8_t*>(frame->data(i));
}
-
if (!std::move(input_buf).QueueUserPtr(std::move(user_ptrs))) {
- VPLOGF(1) << "Failed to queue a USRPTR buffer to input queue";
- NOTIFY_ERROR(kPlatformFailureError);
+ VPLOGF(1) << "Failed queue a USRPTR buffer to input queue";
return false;
}
- frame->AddDestructionObserver(
- base::DoNothingWithBoundArgs(std::move(writable_buffer)));
break;
}
case V4L2_MEMORY_DMABUF: {
@@ -1421,6 +1410,7 @@ bool V4L2VideoEncodeAccelerator::EnqueueInputRecord(
VPLOGF(1) << "Failed queue a DMABUF buffer to input queue";
return false;
}
+
// Keep |gmb_handle| alive as long as |frame| is alive so that fds passed
// to the driver are valid during encoding.
frame->AddDestructionObserver(base::BindOnce(

View File

@ -190,8 +190,6 @@
%global bundlelibwebp 0
%global bundlelibpng 0
%global bundlelibjpeg 0
# Needs FT_ClipBox which was implemented after 2.11.0. Should be able to set this back to 0 later.
%global bundlefreetype 1
%global bundlelibdrm 0
%global bundlefontconfig 0
%global bundleffmpegfree 0
@ -201,6 +199,12 @@
%else
%global bundlelibaom 0
%endif
# system freetype on fedora > 36
%if 0%{?fedora} > 36
%global bundlefreetype 0
%else
%global bundlefreetype 1
%endif
%endif
### From 2013 until early 2021, Google permitted distribution builds of
@ -237,7 +241,7 @@
%endif
Name: chromium%{chromium_channel}
Version: 110.0.5481.177
Version: 111.0.5563.50
Release: 1%{?dist}
Summary: A WebKit (Blink) powered web browser that Google doesn't want you to use
Url: http://www.chromium.org/Home
@ -274,9 +278,6 @@ Patch11: chromium-93.0.4577.63-py3-bootstrap.patch
# Add "Fedora" to the user agent string
Patch12: chromium-101.0.4951.41-fedora-user-agent.patch
# numeric_limits is not a member of std
Patch13: chromium-110-limits.patch
# debian patch, disable font-test
Patch20: chromium-disable-font-tests.patch
@ -292,9 +293,6 @@ Patch57: chromium-96.0.4664.45-missing-cstring.patch
# Fix headers to look for system paths when we are using system minizip
Patch61: chromium-109-system-minizip-header-fix.patch
# Update bundled copy of wayland-client-core.h
Patch62: chromium-105.0.5195.52-update-wayland-client-core.patch
# Fix issue where closure_compiler thinks java is only allowed in android builds
# https://bugs.chromium.org/p/chromium/issues/detail?id=1192875
Patch65: chromium-91.0.4472.77-java-only-allowed-in-android-builds.patch
@ -321,9 +319,6 @@ Patch91: chromium-108-system-opus.patch
# fix prefers-color-scheme
Patch92: chromium-110-gtktheme.patch
# From gentoo
Patch98: chromium-94.0.4606.71-InkDropHost-crash.patch
# need to explicitly include a kernel header on EL7 to support MFD_CLOEXEC, F_SEAL_SHRINK, F_ADD_SEALS, F_SEAL_SEAL
Patch100: chromium-108-el7-include-fcntl-memfd.patch
@ -369,21 +364,6 @@ Patch122: chromium-109-gcc13.patch
# Patches by Stephan Hartmann, https://github.com/stha09/chromium-patches
Patch130: chromium-103-VirtualCursor-std-layout.patch
Patch131: chromium-110-CanvasResourceProvider-pragma.patch
Patch132: chromium-110-CredentialUIEntry-const.patch
Patch133: chromium-110-DarkModeLABColorSpace-pow.patch
Patch134: chromium-110-dpf-arm64.patch
Patch135: chromium-110-InProgressDownloadManager-include.patch
Patch136: chromium-110-kCustomizeChromeColors-type.patch
Patch137: chromium-110-NativeThemeBase-fabs.patch
Patch138: chromium-110-Presenter-include.patch
Patch139: chromium-110-raw_ptr-constexpr.patch
Patch140: chromium-110-StorageQueue-decltype.patch
Patch141: chromium-110-SyncIterator-template.patch
Patch142: chromium-110-url_canon_internal-cast.patch
Patch143: chromium-110-v8-gcc.patch
Patch144: chromium-111-v8-std-layout1.patch
Patch145: chromium-111-v8-std-layout2.patch
# VAAPI
# Upstream turned VAAPI on in Linux in 86
@ -391,10 +371,6 @@ Patch202: chromium-104.0.5112.101-enable-hardware-accelerated-mjpeg.patch
Patch205: chromium-86.0.4240.75-fix-vaapi-on-intel.patch
Patch206: chromium-110-ozone-wayland-vaapi-support.patch
# V4L2
# Upstream
Patch250: chromium-v4l2-fix.patch
# Apply these patches to work around EPEL8 issues
Patch300: chromium-99.0.4844.51-rhel8-force-disable-use_gnome_keyring.patch
@ -907,8 +883,8 @@ without support for alsa, cups, dbus, gconf, gio, kerberos, pulseaudio, or
udev.
%prep
%setup -q -n chromium-%{version}
### Chromium Fedora Patches ###
%patch0 -p1 -b .sandboxpie
%patch1 -p1 -b .etc
@ -920,13 +896,6 @@ udev.
%patch9 -p1 -b .widevine-no-download
%patch11 -p1 -b .py3
# Fedora branded user agent
%if 0%{?fedora}
%patch12 -p1 -b .fedora-user-agent
%endif
%patch13 -p1 -b .limits
%patch20 -p1 -b .disable-font-test
%if 0%{?fedora} || 0%{?rhel} >= 8
@ -957,7 +926,10 @@ udev.
%patch92 -p1 -b .gtk-prefers-color-scheme
%patch98 -p1 -b .InkDropHost-crash
# Fedora branded user agent
%if 0%{?fedora}
%patch12 -p1 -b .fedora-user-agent
%endif
%if ! %{bundleffmpegfree}
%patch114 -p1 -b .system-ffmppeg
@ -984,21 +956,6 @@ udev.
%endif
%patch130 -p1 -b .VirtualCursor-std-layout
%patch131 -p1 -b .CanvasResourceProvider-pragma
%patch132 -p1 -b .CredentialUIEntry-const
%patch133 -p1 -b .DarkModeLABColorSpace-pow
%patch134 -p1 -b .dpf-arm64
%patch135 -p1 -b .InProgressDownloadManager-include
%patch136 -p1 -b .kCustomizeChromeColors-type
%patch137 -p1 -b .NativeThemeBase-fabs
%patch138 -p1 -b .Presenter-include
%patch139 -p1 -b .raw_ptr-constexpr
%patch140 -p1 -b .StorageQueue-decltype
%patch141 -p1 -b .SyncIterator-template
%patch142 -p1 -b .url_canon_internal-cast
%patch143 -p1 -b .v8-gcc
%patch144 -p1 -b .v8-std-layout1
%patch145 -p1 -b .v8-std-layout2
%if %{use_qt}
%patch121 -p1 -b .enable-allowqt
@ -1013,10 +970,6 @@ udev.
%patch206 -p1 -b .wayland-vaapi
%endif
%if %{use_v4l2_codec}
%patch250 -p1 -b .v4l2-fix
%endif
%if 0%{?rhel} >= 8
%patch300 -p1 -b .disblegnomekeyring
%endif
@ -1180,12 +1133,6 @@ CHROMIUM_CORE_GN_DEFINES+=' enable_vr=false'
CHROMIUM_CORE_GN_DEFINES+=' build_dawn_tests=false enable_perfetto_unittests=false'
CHROMIUM_CORE_GN_DEFINES+=' disable_fieldtrial_testing_config=true'
CHROMIUM_CORE_GN_DEFINES+=' blink_symbol_level=0 symbol_level=0 v8_symbol_level=0'
%ifarch aarch64
%if 0%{?rhel} == 8
# workaround crash on el8
CHROMIUM_CORE_GN_DEFINES+=' use_partition_alloc_as_malloc=false enable_backup_ref_ptr_support=false'
%endif
%endif
export CHROMIUM_CORE_GN_DEFINES
# browser gn defines
@ -1593,11 +1540,11 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt
%{chromium_path}/libclearkeycdm.so
%endif
%ifarch x86_64 aarch64
%{chromium_path}/libEGL.so*
%{chromium_path}/libGLESv2.so*
%{chromium_path}/libvk_swiftshader.so*
%{chromium_path}/libvulkan.so*
%{chromium_path}/vk_swiftshader_icd.json
%{chromium_path}/libEGL.so*
%{chromium_path}/libGLESv2.so*
%endif
%{chromium_path}/icudtl.dat
%dir %{chromium_path}/
@ -1699,6 +1646,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt
%{chromium_path}/chromedriver
%changelog
* Mon Mar 06 2023 Than Ngo <than@redhat.com> - 111.0.5563.50-1
- update to 111.0.5563.50
- system freetype on fedora > 36
* Thu Feb 23 2023 Than Ngo <than@redhat.com> - 110.0.5481.177-1
- update to 110.0.5481.177
- workaround for crash on aarch64, rhel8

View File

@ -1,3 +1,3 @@
SHA512 (node-v16.17.0-linux-x64.tar.xz) = aedfeeb71420a7fbcb07fbc4c5d2ba74ffe4f88c15998809346a84148132ec866dbae4e848531a2a77ca41413f442e1046f981d4f188bdf667faf88069aa28cd
SHA512 (node-v16.17.0-linux-arm64.tar.xz) = ae4aabc2389779c9e1b4a15622cae3ba50e0c313ca3d7a1dc7b2344df06ade1f303d6a75b941d37e2a0ef368cf047c862a822a893684494f55446afd6ab0610e
SHA512 (chromium-110.0.5481.177-clean.tar.xz) = 3cc3fe325bf773e5da9137272741eda61ca620289a27c1bc16cd3e165f5adc6ebaa00139351c324fcc491497e47659188673edd9b7fd33a2771636d153b69213
SHA512 (chromium-111.0.5563.50-clean.tar.xz) = 4576e080a55cc1dabf65e14d5380310ee93bfe50e40823adb963bf47d3bbe668b39ef41c3f5e7b8c2aebc8161915926a2f6b37c39cc0289898e515e600743e3c