From 2799652b07475209db67e960c9c678428c1bea32 Mon Sep 17 00:00:00 2001 From: slava86 Date: Wed, 24 Jan 2024 15:57:56 +0000 Subject: [PATCH] update the fixes --- ...-don_t-redefine-ATSPI-version-macros.patch | 19 +++++-- ...ename.patch => chromium-121-typename.patch | 54 +++++++++++++++++++ ...karound_clang_bug-structured_binding.patch | 20 +++---- chromium-browser-stable.spec | 4 +- 4 files changed, 82 insertions(+), 15 deletions(-) rename chromium-120-typename.patch => chromium-121-typename.patch (78%) rename chromium-120-workaround_clang_bug-structured_binding.patch => chromium-121-workaround_clang_bug-structured_binding.patch (75%) diff --git a/chromium-119-revert-don_t-redefine-ATSPI-version-macros.patch b/chromium-119-revert-don_t-redefine-ATSPI-version-macros.patch index 1e32053..4aa3888 100644 --- a/chromium-119-revert-don_t-redefine-ATSPI-version-macros.patch +++ b/chromium-119-revert-don_t-redefine-ATSPI-version-macros.patch @@ -1,6 +1,6 @@ ---- a/build/config/linux/atspi2/BUILD.gn 2023-11-01 18:10:05.479540300 +0000 -+++ b/build/config/linux/atspi2/BUILD.gn 2023-11-02 13:21:54.143345346 +0000 -@@ -17,19 +17,13 @@ +--- a/build/config/linux/atspi2/BUILD.gn 2024-01-22 18:41:38.057928000 +0000 ++++ b/build/config/linux/atspi2/BUILD.gn 2024-01-24 15:50:48.707179734 +0000 +@@ -17,30 +17,13 @@ "--version-as-components", ], "value") @@ -8,10 +8,21 @@ - minor = atspi_version[1] - micro = atspi_version[2] - +- # These aren't necessarily used if atspi is not old enough to require them. +- # Also, gn considers variables unused if the only use of them is +- # short-circuited away, so for example if major == 2 and minor == 48, micro +- # would be unused. +- not_needed([ +- "major", +- "minor", +- "micro", +- ]) +- - # ATSPI 2.49.90 now defines these for us and it's an error for us to - # redefine them on the compiler command line. - # See ATSPI 927344a34cd5bf81fc64da4968241735ecb4f03b -- if (minor < 49 || (minor == 49 && micro < 90)) { +- if (major < 2 || (major == 2 && minor < 49) || +- (major == 2 && minor == 49 && micro < 90)) { - defines = [ - "ATSPI_MAJOR_VERSION=$major", - "ATSPI_MINOR_VERSION=$minor", diff --git a/chromium-120-typename.patch b/chromium-121-typename.patch similarity index 78% rename from chromium-120-typename.patch rename to chromium-121-typename.patch index 9a2d878..e83e62c 100644 --- a/chromium-120-typename.patch +++ b/chromium-121-typename.patch @@ -203,3 +203,57 @@ diff -up chromium-120.0.6099.56/third_party/blink/renderer/bindings/core/v8/asyn ExceptionState& exception_state) = 0; }; +diff -up chromium-121.0.6167.57/base/functional/bind_internal.h.me chromium-121.0.6167.57/base/functional/bind_internal.h +--- chromium-121.0.6167.57/base/functional/bind_internal.h.me 2024-01-21 16:10:09.809037581 +0100 ++++ chromium-121.0.6167.57/base/functional/bind_internal.h 2024-01-21 16:46:33.759397303 +0100 +@@ -1533,11 +1533,11 @@ template + struct ParamCanBeBound { + private: +- using UnwrappedParam = BindArgument::template ForwardedAs< ++ using UnwrappedParam = typename BindArgument::template ForwardedAs< + Unwrapped>::template ToParamWithType; +- using ParamStorage = BindArgument::template ToParamWithType< ++ using ParamStorage = typename BindArgument::template ToParamWithType< + Param>::template StoredAs; +- using BoundStorage = ++ using BoundStorage = typename + BindArgument::template BoundAs::template StoredAs; + + // We forbid callbacks from using raw_ptr as a parameter. However, we allow +diff -up chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h.me chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h +--- chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h.me 2024-01-21 17:23:37.786606428 +0100 ++++ chromium-121.0.6167.57/mojo/public/cpp/bindings/array_traits.h 2024-01-21 17:23:58.582127103 +0100 +@@ -90,7 +90,7 @@ template + { c[i] } -> std::same_as; + } + struct ArrayTraits { +- using Element = Container::value_type; ++ using Element = typename Container::value_type; + + // vector-like containers have no built-in null. + static bool IsNull(const Container& c) { return false; } +diff -up chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h.me chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h +--- chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h.me 2024-01-21 17:33:40.030897838 +0100 ++++ chromium-121.0.6167.57/components/optimization_guide/core/model_execution/model_execution_util.h 2024-01-21 17:34:11.518705266 +0100 +@@ -25,7 +25,7 @@ void SetExecutionRequestTemplate( + + // Request is set by the feature and should always be typed. + auto typed_request = +- static_cast(request_metadata); ++ static_cast(request_metadata); + *(logging_data->mutable_request_data()) = typed_request; + } + +diff -up chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h.me chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h +--- chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h.me 2024-01-21 17:32:42.367417619 +0100 ++++ chromium-121.0.6167.57/components/optimization_guide/core/model_quality/model_quality_log_entry.h 2024-01-21 17:33:25.732531198 +0100 +@@ -29,7 +29,7 @@ class ModelQualityLogEntry { + } + + template +- FeatureType::Quality* quality_data() { ++ typename FeatureType::Quality* quality_data() { + return FeatureType::GetLoggingData(*log_ai_data_request_) + ->mutable_quality_data(); + } diff --git a/chromium-120-workaround_clang_bug-structured_binding.patch b/chromium-121-workaround_clang_bug-structured_binding.patch similarity index 75% rename from chromium-120-workaround_clang_bug-structured_binding.patch rename to chromium-121-workaround_clang_bug-structured_binding.patch index b06e29f..192b069 100644 --- a/chromium-120-workaround_clang_bug-structured_binding.patch +++ b/chromium-121-workaround_clang_bug-structured_binding.patch @@ -25,27 +25,29 @@ diff -up chromium-115.0.5790.32/content/browser/service_worker/service_worker_co DCHECK(document_url.is_valid()); TRACE_EVENT1("ServiceWorker", -diff -up chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.me chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc ---- chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.me 2023-12-03 22:17:50.922083200 +0100 -+++ chromium-120.0.6099.56/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc 2023-12-03 22:22:55.437484343 +0100 -@@ -3447,7 +3447,8 @@ void GridLayoutAlgorithm::PlaceGridItems +diff -up chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.than chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc +--- chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc.than 2023-12-19 17:57:56.205197246 +0100 ++++ chromium-121.0.6167.16/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc 2023-12-19 18:10:13.778634531 +0100 +@@ -3527,8 +3527,8 @@ void GridLayoutAlgorithm::PlaceGridItems DCHECK(out_row_break_between); - const auto& container_space = ConstraintSpace(); + const auto& container_space = GetConstraintSpace(); - const auto& [grid_items, layout_data, tree_size] = sizing_tree.TreeRootData(); +- + const auto& [grid_items, l_d, tree_size] = sizing_tree.TreeRootData(); + const auto& layout_data = l_d; - const auto* cached_layout_subtree = container_space.GetGridLayoutSubtree(); const auto container_writing_direction = -@@ -3611,7 +3612,9 @@ void GridLayoutAlgorithm::PlaceGridItems + container_space.GetWritingDirection(); +@@ -3691,8 +3691,9 @@ void GridLayoutAlgorithm::PlaceGridItems // TODO(ikilpatrick): Update |SetHasSeenAllChildren| and early exit if true. - const auto& constraint_space = ConstraintSpace(); + const auto& constraint_space = GetConstraintSpace(); - const auto& [grid_items, layout_data, tree_size] = sizing_tree.TreeRootData(); +- + const auto& [g_i, l_d, tree_size] = sizing_tree.TreeRootData(); + const auto& grid_items = g_i; + const auto& layout_data = l_d; - const auto* cached_layout_subtree = constraint_space.GetGridLayoutSubtree(); const auto container_writing_direction = + constraint_space.GetWritingDirection(); diff --git a/chromium-browser-stable.spec b/chromium-browser-stable.spec index 9a84fb4..6507e4c 100644 --- a/chromium-browser-stable.spec +++ b/chromium-browser-stable.spec @@ -134,9 +134,9 @@ ExclusiveArch: %{x86_64} aarch64 Source1101: https://github.com/deemru/chromium-gost/archive/%{chromium_gost_commit}.tar.gz?/chromium-gost-%{chromium_gost_commit}.tar.gz Source1102: https://github.com/deemru/msspi/archive/%{msspi_commit}.tar.gz?/msspi-%{msspi_commit}.tar.gz # workaround for clang bug, https://github.com/llvm/llvm-project/issues/57826 -Patch0: chromium-120-workaround_clang_bug-structured_binding.patch +Patch0: chromium-121-workaround_clang_bug-structured_binding.patch # declare iterators as subtypes -Patch1: chromium-120-typename.patch +Patch1: chromium-121-typename.patch Patch4: chromium-30.0.1599.66-master-prefs-path.patch # (cjw) fix gn bootstrapping with gcc Patch190: chromium-69-gn-bootstrap.patch