diff --git a/common-files/chromium-patches/add-missing-typename-6/6099.patch b/common-files/chromium-patches/add-missing-typename-6/6099.patch new file mode 100644 index 000000000..c9214a8c1 --- /dev/null +++ b/common-files/chromium-patches/add-missing-typename-6/6099.patch @@ -0,0 +1,20 @@ +--- a/base/containers/map_util.h ++++ b/base/containers/map_util.h +@@ -42,7 +42,7 @@ + template >::element_type> ++ typename std::pointer_traits>::element_type> + constexpr const MappedElementType* FindPtrOrNull(const Map& map, + const Key& key) { + auto it = map.find(key); +@@ -58,7 +58,7 @@ + template >::element_type> ++ typename std::pointer_traits>::element_type> + constexpr MappedElementType* FindPtrOrNull(Map& map, const Key& key) { + auto it = map.find(key); + return it != map.end() ? std::to_address(it->second) : nullptr; diff --git a/common-files/chromium-patches/add-missing-typename-7/6099.patch b/common-files/chromium-patches/add-missing-typename-7/6099.patch new file mode 100644 index 000000000..61d11c2e2 --- /dev/null +++ b/common-files/chromium-patches/add-missing-typename-7/6099.patch @@ -0,0 +1,20 @@ +--- a/third_party/blink/renderer/bindings/core/v8/async_iterable.h ++++ b/third_party/blink/renderer/bindings/core/v8/async_iterable.h +@@ -220,7 +220,7 @@ + private: + virtual IterationSource* CreateIterationSource( + ScriptState* script_state, +- IterationSource::Kind kind, ++ typename IterationSource::Kind kind, + ExceptionState& exception_state) = 0; + }; + +@@ -262,7 +262,7 @@ + private: + virtual IterationSource* CreateIterationSource( + ScriptState* script_state, +- IterationSource::Kind kind, ++ typename IterationSource::Kind kind, + ExceptionState& exception_state) = 0; + }; + diff --git a/common-files/chromium-patches/autofill_i18n_api-no-constexpr-string/6099.patch b/common-files/chromium-patches/autofill_i18n_api-no-constexpr-string/6099.patch new file mode 100644 index 000000000..c455a78b4 --- /dev/null +++ b/common-files/chromium-patches/autofill_i18n_api-no-constexpr-string/6099.patch @@ -0,0 +1,19 @@ +The building system of chromium on Termux is much complex. For the host +toolchain, it uses clang-15 from Ubuntu as CXX compiler and libstdcxx-10 +from Google-provided sysroot as CXX headers. For the target toolchain, it +uses CXX compiler and headers from Android NDK, which is from clang-17 and +libcxx-17. This patch is to satisfy them all. + +--- a/components/autofill/core/browser/data_model/autofill_i18n_api.h ++++ b/components/autofill/core/browser/data_model/autofill_i18n_api.h +@@ -15,8 +15,8 @@ + // Country code that represents autofill's legacy address hierarchy model as + // stored `kAutofillModelRules`. As a workaround for GCC we declare the + // std::string constexpr first. +-constexpr inline std::string kLegacyHierarchyCountryCodeString{"XX"}; +-constexpr AddressCountryCode kLegacyHierarchyCountryCode = ++constexpr inline const char kLegacyHierarchyCountryCodeString[] = "XX"; ++static const inline AddressCountryCode kLegacyHierarchyCountryCode = + AddressCountryCode(kLegacyHierarchyCountryCodeString); + + // Creates an instance of the address hierarchy model corresponding to the diff --git a/common-files/chromium-patches/blink-fix-structured-binding-declaration/6099.patch b/common-files/chromium-patches/blink-fix-structured-binding-declaration/6099.patch new file mode 100644 index 000000000..db51f776a --- /dev/null +++ b/common-files/chromium-patches/blink-fix-structured-binding-declaration/6099.patch @@ -0,0 +1,98 @@ +--- a/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc ++++ b/third_party/blink/renderer/core/layout/grid/grid_layout_algorithm.cc +@@ -632,8 +632,9 @@ + GridSizingTree sizing_tree; + + if (const auto* layout_subtree = ConstraintSpace().GetGridLayoutSubtree()) { +- auto& [grid_items, layout_data, subtree_size] = +- sizing_tree.CreateSizingData(); ++ auto& sizing_data = sizing_tree.CreateSizingData(); ++ auto& grid_items = sizing_data.grid_items; ++ auto& layout_data = sizing_data.layout_data; + + const auto& node = Node(); + grid_items = +@@ -671,8 +672,9 @@ + const auto& track_collection = (track_direction == kForColumns) + ? layout_data.Columns() + : layout_data.Rows(); +- const auto& [begin_set_index, end_set_index] = +- grid_item.SetIndices(track_direction); ++ const auto& set_indices = grid_item.SetIndices(track_direction); ++ const auto& begin_set_index = set_indices.begin; ++ const auto& end_set_index = set_indices.end; + + return (grid_item.BaselineGroup(track_direction) == BaselineGroup::kMajor) + ? track_collection.MajorBaseline(begin_set_index) +@@ -1181,8 +1183,10 @@ + : subgridded_item.Rows(writing_mode); + + const auto margins = ComputeMarginsFor(space, item_style, constraint_space); +- const auto& [begin_set_index, end_set_index] = +- subgridded_item->SetIndices(track_collection.Direction()); ++ ++ const auto& set_indices = subgridded_item->SetIndices(track_collection.Direction()); ++ const auto& begin_set_index = set_indices.begin; ++ const auto& end_set_index = set_indices.end; + + const auto margin_sum = + (is_for_columns ? margins.InlineSum() : margins.BlockSum()) + +@@ -1835,8 +1839,9 @@ + bool* opt_needs_additional_pass) const { + DCHECK(sizing_subtree); + +- auto& [grid_items, layout_data, subtree_size] = +- sizing_subtree.SubtreeRootData(); ++ auto& sizing_data = sizing_subtree.SubtreeRootData(); ++ auto& grid_items = sizing_data.grid_items; ++ auto& layout_data = sizing_data.layout_data; + + const bool is_for_columns = track_direction == kForColumns; + const bool has_non_definite_track = +@@ -1982,8 +1987,10 @@ + void GridLayoutAlgorithm::ForEachSubgrid( + const GridSizingSubtree& sizing_subtree, + const CallbackFunc& callback_func) const { +- auto& [grid_items, layout_data, subtree_size] = +- sizing_subtree.SubtreeRootData(); ++ auto& sizing_data = sizing_subtree.SubtreeRootData(); ++ auto& grid_items = sizing_data.grid_items; ++ auto& layout_data = sizing_data.layout_data; ++ auto& subtree_size = sizing_data.subtree_size; + + // If we know this subtree doesn't have nested subgrids we can exit early + // instead of iterating over every grid item looking for them. +@@ -3447,7 +3454,9 @@ + DCHECK(out_row_break_between); + + const auto& container_space = ConstraintSpace(); +- const auto& [grid_items, layout_data, tree_size] = sizing_tree.TreeRootData(); ++ const auto& sizing_data = sizing_tree.TreeRootData(); ++ const auto& grid_items = sizing_data.grid_items; ++ const auto& layout_data = sizing_data.layout_data; + + const auto* cached_layout_subtree = container_space.GetGridLayoutSubtree(); + const auto container_writing_direction = +@@ -3611,7 +3620,9 @@ + + // TODO(ikilpatrick): Update |SetHasSeenAllChildren| and early exit if true. + const auto& constraint_space = ConstraintSpace(); +- const auto& [grid_items, layout_data, tree_size] = sizing_tree.TreeRootData(); ++ const auto& sizing_data = sizing_tree.TreeRootData(); ++ const auto& grid_items = sizing_data.grid_items; ++ const auto& layout_data = sizing_data.layout_data; + + const auto* cached_layout_subtree = constraint_space.GetGridLayoutSubtree(); + const auto container_writing_direction = +@@ -4313,8 +4324,9 @@ + DCHECK(!grid_item.IsOutOfFlow()); + DCHECK(!grid_item.is_subgridded_to_parent_grid); + +- const auto& [begin_set_index, end_set_index] = +- grid_item.SetIndices(track_collection.Direction()); ++ const auto& set_indices = grid_item.SetIndices(track_collection.Direction()); ++ const auto& begin_set_index = set_indices.begin; ++ const auto& end_set_index = set_indices.end; + + if (start_offset) { + *start_offset = track_collection.GetSetOffset(begin_set_index); diff --git a/common-files/chromium-patches/chromium-fenced_frame-declare-destructor/6099.patch b/common-files/chromium-patches/chromium-fenced_frame-declare-destructor/6099.patch new file mode 100644 index 000000000..b1324fda8 --- /dev/null +++ b/common-files/chromium-patches/chromium-fenced_frame-declare-destructor/6099.patch @@ -0,0 +1,29 @@ +--- a/content/browser/fenced_frame/fenced_frame_reporter.h ++++ b/content/browser/fenced_frame/fenced_frame_reporter.h +@@ -44,6 +44,8 @@ + std::string type; + std::string data; + ++ ~DestinationEnumEvent() {} ++ + // The equal to operator is defined in order to enable comparison of + // DestinationVariant. + bool operator==(const DestinationEnumEvent& other) const { +@@ -57,6 +59,8 @@ + struct DestinationURLEvent { + GURL url; + ++ ~DestinationURLEvent() {} ++ + // The equal to operator is defined in order to enable comparison of + // DestinationVariant. + bool operator==(const DestinationURLEvent& other) const { +@@ -71,6 +75,8 @@ + blink::mojom::AutomaticBeaconType type; + std::string data; + ++ ~AutomaticBeaconEvent() {} ++ + // The equal to operator is defined in order to enable comparison of + // DestinationVariant. + bool operator==(const AutomaticBeaconEvent& other) const { diff --git a/common-files/chromium-patches/chromium-no-execinfo/6099.patch b/common-files/chromium-patches/chromium-no-execinfo/6099.patch new file mode 100644 index 000000000..4b578976a --- /dev/null +++ b/common-files/chromium-patches/chromium-no-execinfo/6099.patch @@ -0,0 +1,69 @@ +musl does not have execinfo.h, and hence no implementation of +. backtrace() +. backtrace_symbols() +for discussion about this, see https://www.openwall.com/lists/musl/2021/07/16/1 +-- +--- a/v8/src/codegen/external-reference-table.cc ++++ b/v8/src/codegen/external-reference-table.cc +@@ -11,7 +11,9 @@ + + #if defined(DEBUG) && defined(V8_OS_LINUX) && !defined(V8_OS_ANDROID) + #define SYMBOLIZE_FUNCTION ++#if defined(__GLIBC__) + #include ++#endif + + #include + +@@ -96,7 +98,7 @@ + } + + const char* ExternalReferenceTable::ResolveSymbol(void* address) { +-#ifdef SYMBOLIZE_FUNCTION ++#if defined(SYMBOLIZE_FUNCTION) && defined(__GLIBC__) + char** names = backtrace_symbols(&address, 1); + const char* name = names[0]; + // The array of names is malloc'ed. However, each name string is static +--- a/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h ++++ b/third_party/swiftshader/third_party/llvm-subzero/build/Linux/include/llvm/Config/config.h +@@ -58,7 +58,7 @@ + #define HAVE_ERRNO_H 1 + + /* Define to 1 if you have the header file. */ +-#define HAVE_EXECINFO_H 1 ++/* #define HAVE_EXECINFO_H 1 */ + + /* Define to 1 if you have the header file. */ + #define HAVE_FCNTL_H 1 +--- a/base/debug/stack_trace.cc ++++ b/base/debug/stack_trace.cc +@@ -251,7 +253,9 @@ + } + + void StackTrace::OutputToStream(std::ostream* os) const { ++#if defined(__GLIBC__) && !defined(_AIX) + OutputToStreamWithPrefix(os, nullptr); ++#endif + } + + std::string StackTrace::ToString() const { +@@ -281,7 +281,7 @@ + } + std::string StackTrace::ToStringWithPrefix(const char* prefix_string) const { + std::stringstream stream; +-#if !defined(__UCLIBC__) && !defined(_AIX) ++#if defined(__GLIBC__) && !defined(_AIX) + OutputToStreamWithPrefix(&stream, prefix_string); + #endif + return stream.str(); +--- a/base/debug/stack_trace_unittest.cc ++++ b/base/debug/stack_trace_unittest.cc +@@ -33,7 +33,7 @@ + typedef testing::Test StackTraceTest; + #endif + +-#if !defined(__UCLIBC__) && !defined(_AIX) ++#if !defined(__UCLIBC__) && !defined(_AIX) && defined(__GLIBC__) + // StackTrace::OutputToStream() is not implemented under uclibc, nor AIX. + // See https://crbug.com/706728 + diff --git a/common-files/chromium-patches/compiler-remove-unsupported-flags/6099.patch b/common-files/chromium-patches/compiler-remove-unsupported-flags/6099.patch new file mode 100644 index 000000000..4968b754c --- /dev/null +++ b/common-files/chromium-patches/compiler-remove-unsupported-flags/6099.patch @@ -0,0 +1,34 @@ +--- a/build/config/compiler/BUILD.gn ++++ b/build/config/compiler/BUILD.gn +@@ -1859,31 +1859,6 @@ + # TODO(thakis): Only for no_chromium_code? http://crbug.com/912662 + "-Wno-ignored-pragma-optimize", + ] +- +- if (!is_nacl) { +- cflags += [ +- # TODO(crbug.com/1343975) Evaluate and possibly enable. +- "-Wno-deprecated-builtins", +- +- # TODO(crbug.com/1352183) Evaluate and possibly enable. +- "-Wno-bitfield-constant-conversion", +- +- # TODO(crbug.com/1412713) Evaluate and possibly enable. +- "-Wno-deprecated-this-capture", +- +- # TODO(https://crbug.com/1491833): Fix and re-enable. +- "-Wno-invalid-offsetof", +- +- # TODO(crbug.com/1494809): Evaluate and possibly enable. +- "-Wno-vla-extension", +- +- # TODO(https://crbug.com/1490607): Fix and re-enable. +- "-Wno-thread-safety-reference-return", +- +- # TODO(crbug.com/1495100): Evaluate and possibly enable. +- "-Wno-delayed-template-parsing-in-cxx20", +- ] +- } + } + + # Some builders, such as Cronet, use a different version of Clang than diff --git a/common-files/chromium-patches/fragment_data_iterator-use-std_nullptr_t/6099.patch b/common-files/chromium-patches/fragment_data_iterator-use-std_nullptr_t/6099.patch new file mode 100644 index 000000000..40faddb65 --- /dev/null +++ b/common-files/chromium-patches/fragment_data_iterator-use-std_nullptr_t/6099.patch @@ -0,0 +1,11 @@ +--- a/third_party/blink/renderer/core/paint/fragment_data_iterator.h ++++ b/third_party/blink/renderer/core/paint/fragment_data_iterator.h +@@ -21,7 +21,7 @@ + + public: + explicit FragmentDataIteratorBase(Head& head) : fragment_head_(head) {} +- explicit FragmentDataIteratorBase(nullptr_t) {} ++ explicit FragmentDataIteratorBase(std::nullptr_t) {} + + Data* GetFragmentData() const { + return !IsDone() ? &fragment_head_.at(idx_) : nullptr; diff --git a/common-files/chromium-patches/metadata.json b/common-files/chromium-patches/metadata.json index 41d2ebf03..53f1bf71c 100644 --- a/common-files/chromium-patches/metadata.json +++ b/common-files/chromium-patches/metadata.json @@ -19,6 +19,12 @@ "add-missing-typename-5/5845.patch": { "start": 5845 }, + "add-missing-typename-6/6099.patch": { + "start": 6099 + }, + "add-missing-typename-7/6099.patch": { + "start": 6099 + }, "angle-fix-atomic/5615.patch": { "start": 5615 }, @@ -31,6 +37,9 @@ "atspi-mark-possibly-unused-gn-variables/6045.patch": { "start": 6045 }, + "autofill_i18n_api-no-constexpr-string/6099.patch": { + "start": 6099 + }, "avoid-constexpr-std-string/5672.patch": { "start": 5672, "end": 5775 @@ -55,7 +64,11 @@ "end": 5937 }, "blink-fix-structured-binding-declaration/5938.patch": { - "start": 5938 + "start": 5938, + "end": 6098 + }, + "blink-fix-structured-binding-declaration/6099.patch": { + "start": 6099 }, "blink-font-constructor/5845.patch": { "start": 5845 @@ -106,7 +119,11 @@ "start": 5359 }, "chromium-fenced_frame-declare-destructor/5938.patch": { - "start": 5938 + "start": 5938, + "end": 6098 + }, + "chromium-fenced_frame-declare-destructor/6099.patch": { + "start": 6099 }, "chromium-dns-class-constructor/5845.patch": { "start": 5845, @@ -202,7 +219,11 @@ "end": 5562 }, "chromium-no-execinfo/5563.patch": { - "start": 5563 + "start": 5563, + "end": 6098 + }, + "chromium-no-execinfo/6099.patch": { + "start": 6099 }, "chromium-no-futimes/4389.patch": { "start": 4389 @@ -291,7 +312,11 @@ "end": 6044 }, "compiler-remove-unsupported-flags/6045.patch": { - "start": 6045 + "start": 6045, + "end": 6098 + }, + "compiler-remove-unsupported-flags/6099.patch": { + "start": 6099 }, "compiler-use-android-target/4389.patch": { "start": 4389, @@ -383,7 +408,11 @@ "start": 4389 }, "fragment_data_iterator-use-std_nullptr_t/6045.patch": { - "start": 6045 + "start": 6045, + "end": 6098 + }, + "fragment_data_iterator-use-std_nullptr_t/6099.patch": { + "start": 6099 }, "gtk-fix-dynamic-loaded-libraries/4472.patch": { "start": 4472, @@ -415,9 +444,15 @@ "ozone-wayland-memfd/5845.patch": { "start": 5845 }, + "partition_alloc-use-std_nullptr_t/6099.patch": { + "start": 6099 + }, "perfetto-no-android-jni/5359.patch": { "start": 5359 }, + "perfetto-no-pthread_getname_np/6099.patch": { + "start": 6099 + }, "persistent_histogram_allocator-constructor/6045.patch": { "start": 6045 }, @@ -547,6 +582,30 @@ "x11-fix-dynamic-loaded-libraries/6045.patch": { "start": 6045 }, + "y-exclusive_sync_wait_info-constructor/6099.patch": { + "start": 6099 + }, + "y-geometry_mapper_transform_cache-constructor/6099.patch": { + "start": 6099 + }, + "y-gfx-constructor/6099.patch": { + "start": 6099 + }, + "y-live_anchor_time-constructor/6099.patch": { + "start": 6099 + }, + "y-loss_based_bwe_v2_config-constructor/6099.patch": { + "start": 6099 + }, + "y-race_network_request_info-constructor/6099.patch": { + "start": 6099 + }, + "y-shared_image_backing-constructor/6099.patch": { + "start": 6099 + }, + "y-view_state-consturctor/6099.patch": { + "start": 6099 + }, "z-iwyu-blink-include-bitset/5615.patch": { "start": 5615, "end": 5734 diff --git a/common-files/chromium-patches/partition_alloc-use-std_nullptr_t/6099.patch b/common-files/chromium-patches/partition_alloc-use-std_nullptr_t/6099.patch new file mode 100644 index 000000000..686000d7d --- /dev/null +++ b/common-files/chromium-patches/partition_alloc-use-std_nullptr_t/6099.patch @@ -0,0 +1,43 @@ +https://github.com/chromium/chromium/commit/b74d5e6b91ccdf8b2518ef733d75c04823979d18 + +--- a/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/strings/safe_sprintf.h ++++ b/base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/strings/safe_sprintf.h +@@ -5,10 +5,11 @@ + #ifndef BASE_ALLOCATOR_PARTITION_ALLOCATOR_SRC_PARTITION_ALLOC_PARTITION_ALLOC_BASE_STRINGS_SAFE_SPRINTF_H_ + #define BASE_ALLOCATOR_PARTITION_ALLOCATOR_SRC_PARTITION_ALLOC_PARTITION_ALLOC_BASE_STRINGS_SAFE_SPRINTF_H_ + +-#include + #include + #include + ++#include ++ + #include "build/build_config.h" + + #if BUILDFLAG(IS_POSIX) || BUILDFLAG(IS_FUCHSIA) +@@ -178,18 +179,20 @@ struct Arg { + integer.width = sizeof(long long); + } + +- // nullptr_t would be ambiguous between char* and const char*; to get ++ // std::nullptr_t would be ambiguous between char* and const char*; to get + // consistent behavior with NULL, which prints with all three of %d, %p, and + // %s, treat it as an integer zero internally. + // + // Warning: don't just do Arg(NULL) here because in some libcs, NULL is an +- // alias for nullptr! +- Arg(nullptr_t p) : type(INT) { ++ // alias for std::nullptr! ++ // ++ // NOLINTNEXTLINE(runtime/explicit) ++ Arg(std::nullptr_t p) : type(INT) { + integer.i = 0; + // Internally, SafeSprintf expects to represent nulls as integers whose + // width is equal to sizeof(NULL), which is not necessarily equal to +- // sizeof(nullptr_t) - eg, on Windows, NULL is defined to 0 (with size 4) +- // while nullptr_t is of size 8. ++ // sizeof(std::nullptr_t) - eg, on Windows, NULL is defined to 0 (with size ++ // 4) while std::nullptr_t is of size 8. + integer.width = sizeof(NULL); + } + diff --git a/common-files/chromium-patches/perfetto-no-pthread_getname_np/6099.patch b/common-files/chromium-patches/perfetto-no-pthread_getname_np/6099.patch new file mode 100644 index 000000000..dc6382c1c --- /dev/null +++ b/common-files/chromium-patches/perfetto-no-pthread_getname_np/6099.patch @@ -0,0 +1,20 @@ +--- a/third_party/perfetto/include/perfetto/ext/base/thread_utils.h ++++ b/third_party/perfetto/include/perfetto/ext/base/thread_utils.h +@@ -31,7 +31,7 @@ + #include + #endif + +-#if PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID) ++#if PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID) || defined(__ANDROID__) + #include + #endif + +@@ -59,7 +59,7 @@ + + inline bool GetThreadName(std::string& out_result) { + char buf[16] = {}; +-#if PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID) ++#if PERFETTO_BUILDFLAG(PERFETTO_OS_ANDROID) || defined(__ANDROID__) + if (prctl(PR_GET_NAME, buf) != 0) + return false; + #else diff --git a/common-files/chromium-patches/y-exclusive_sync_wait_info-constructor/6099.patch b/common-files/chromium-patches/y-exclusive_sync_wait_info-constructor/6099.patch new file mode 100644 index 000000000..8d43d779e --- /dev/null +++ b/common-files/chromium-patches/y-exclusive_sync_wait_info-constructor/6099.patch @@ -0,0 +1,14 @@ +--- a/mojo/public/cpp/bindings/lib/multiplex_router.h ++++ b/mojo/public/cpp/bindings/lib/multiplex_router.h +@@ -312,7 +312,10 @@ + // Tracks information about the current exclusive sync wait, if any, on the + // MultiplexRouter's primary thread. Note that exclusive off-thread sync waits + // are not managed by the MultiplexRouter and thus are not relevant here. +- struct ExclusiveSyncWaitInfo { ++ class ExclusiveSyncWaitInfo { ++ public: ++ ExclusiveSyncWaitInfo() {} ++ + InterfaceId interface_id = kInvalidInterfaceId; + uint64_t request_id = 0; + bool finished = false; diff --git a/common-files/chromium-patches/y-geometry_mapper_transform_cache-constructor/6099.patch b/common-files/chromium-patches/y-geometry_mapper_transform_cache-constructor/6099.patch new file mode 100644 index 000000000..a9084322b --- /dev/null +++ b/common-files/chromium-patches/y-geometry_mapper_transform_cache-constructor/6099.patch @@ -0,0 +1,26 @@ +--- a/third_party/blink/renderer/platform/graphics/paint/geometry_mapper_transform_cache.h ++++ b/third_party/blink/renderer/platform/graphics/paint/geometry_mapper_transform_cache.h +@@ -210,7 +210,10 @@ + // = flatten(parent.to_screen) * local + // = flatten(parent.plane_root.to_screen) * parent.to_plane_root * local + // = flatten(plane_root.to_screen) * to_plane_root +- struct PlaneRootTransform { ++ class PlaneRootTransform { ++ public: ++ PlaneRootTransform() {} ++ + gfx::Transform to_plane_root; + gfx::Transform from_plane_root; + const TransformPaintPropertyNode* plane_root = nullptr; +@@ -219,7 +222,10 @@ + }; + absl::optional plane_root_transform_; + +- struct ScreenTransform { ++ class ScreenTransform { ++ public: ++ ScreenTransform() {} ++ + gfx::Transform to_screen; + gfx::Transform projection_from_screen; + bool projection_from_screen_is_valid = false; diff --git a/common-files/chromium-patches/y-gfx-constructor/6099.patch b/common-files/chromium-patches/y-gfx-constructor/6099.patch new file mode 100644 index 000000000..8f1bf4005 --- /dev/null +++ b/common-files/chromium-patches/y-gfx-constructor/6099.patch @@ -0,0 +1,450 @@ +--- a/ui/gfx/x/generated_protos/xinput.h ++++ b/ui/gfx/x/generated_protos/xinput.h +@@ -443,15 +443,21 @@ + + struct InputInfo { + uint8_t len{}; +- struct Key { ++ class Key { ++ public: ++ Key() {} + KeyCode min_keycode{}; + KeyCode max_keycode{}; + uint16_t num_keys{}; + }; +- struct Button { ++ class Button { ++ public: ++ Button() {} + uint16_t num_buttons{}; + }; +- struct Valuator { ++ class Valuator { ++ public: ++ Valuator() {} + ValuatorMode mode{}; + uint32_t motion_size{}; + std::vector axes{}; +@@ -588,7 +594,9 @@ + struct FeedbackState { + uint8_t feedback_id{}; + uint16_t len{}; +- struct Keyboard { ++ class Keyboard { ++ public: ++ Keyboard() {} + uint16_t pitch{}; + uint16_t duration{}; + uint32_t led_mask{}; +@@ -598,25 +606,35 @@ + uint8_t percent{}; + std::array auto_repeats{}; + }; +- struct Pointer { ++ class Pointer { ++ public: ++ Pointer() {} + uint16_t accel_num{}; + uint16_t accel_denom{}; + uint16_t threshold{}; + }; +- struct String { ++ class String { ++ public: ++ String() {} + uint16_t max_symbols{}; + std::vector keysyms{}; + }; +- struct Integer { ++ class Integer { ++ public: ++ Integer() {} + uint32_t resolution{}; + int32_t min_value{}; + int32_t max_value{}; + }; +- struct Led { ++ class Led { ++ public: ++ Led() {} + uint32_t led_mask{}; + uint32_t led_values{}; + }; +- struct Bell { ++ class Bell { ++ public: ++ Bell() {} + uint8_t percent{}; + uint16_t pitch{}; + uint16_t duration{}; +@@ -725,7 +743,9 @@ + struct FeedbackCtl { + uint8_t feedback_id{}; + uint16_t len{}; +- struct Keyboard { ++ class Keyboard { ++ public: ++ Keyboard() {} + KeyCode key{}; + uint8_t auto_repeat_mode{}; + int8_t key_click_percent{}; +@@ -735,22 +755,32 @@ + uint32_t led_mask{}; + uint32_t led_values{}; + }; +- struct Pointer { ++ class Pointer { ++ public: ++ Pointer() {} + int16_t num{}; + int16_t denom{}; + int16_t threshold{}; + }; +- struct String { ++ class String { ++ public: ++ String() {} + std::vector keysyms{}; + }; +- struct Integer { ++ class Integer { ++ public: ++ Integer() {} + int32_t int_to_display{}; + }; +- struct Led { ++ class Led { ++ public: ++ Led() {} + uint32_t led_mask{}; + uint32_t led_values{}; + }; +- struct Bell { ++ class Bell { ++ public: ++ Bell() {} + int8_t percent{}; + int16_t pitch{}; + int16_t duration{}; +@@ -801,15 +831,21 @@ + + struct InputState { + uint8_t len{}; +- struct Key { ++ class Key { ++ public: ++ Key() {} + uint8_t num_keys{}; + std::array keys{}; + }; +- struct Button { ++ class Button { ++ public: ++ Button() {} + uint8_t num_buttons{}; + std::array buttons{}; + }; +- struct Valuator { ++ class Valuator { ++ public: ++ Valuator() {} + ValuatorStateModeMask mode{}; + std::vector valuators{}; + }; +@@ -898,12 +934,16 @@ + + struct DeviceState { + uint16_t len{}; +- struct Resolution { ++ class Resolution { ++ public: ++ Resolution() {} + std::vector resolution_values{}; + std::vector resolution_min{}; + std::vector resolution_max{}; + }; +- struct AbsCalib { ++ class AbsCalib { ++ public: ++ AbsCalib() {} + int32_t min_x{}; + int32_t max_x{}; + int32_t min_y{}; +@@ -913,14 +953,20 @@ + uint32_t rotation{}; + uint32_t button_threshold{}; + }; +- struct Core { ++ class Core { ++ public: ++ Core() {} + uint8_t status{}; + uint8_t iscore{}; + }; +- struct Enable { ++ class Enable { ++ public: ++ Enable() {} + uint8_t enable{}; + }; +- struct AbsArea { ++ class AbsArea { ++ public: ++ AbsArea() {} + uint32_t offset_x{}; + uint32_t offset_y{}; + uint32_t width{}; +@@ -1012,11 +1058,15 @@ + + struct DeviceCtl { + uint16_t len{}; +- struct Resolution { ++ class Resolution { ++ public: ++ Resolution() {} + uint8_t first_valuator{}; + std::vector resolution_values{}; + }; +- struct AbsCalib { ++ class AbsCalib { ++ public: ++ AbsCalib() {} + int32_t min_x{}; + int32_t max_x{}; + int32_t min_y{}; +@@ -1026,13 +1076,19 @@ + uint32_t rotation{}; + uint32_t button_threshold{}; + }; +- struct Core { ++ class Core { ++ public: ++ Core() {} + uint8_t status{}; + }; +- struct Enable { ++ class Enable { ++ public: ++ Enable() {} + uint8_t enable{}; + }; +- struct AbsArea { ++ class AbsArea { ++ public: ++ AbsArea() {} + uint32_t offset_x{}; + uint32_t offset_y{}; + int32_t width{}; +@@ -1126,22 +1182,30 @@ + + struct HierarchyChange { + uint16_t len{}; +- struct AddMaster { ++ class AddMaster { ++ public: ++ AddMaster() {} + uint8_t send_core{}; + uint8_t enable{}; + std::string name{}; + }; +- struct RemoveMaster { ++ class RemoveMaster { ++ public: ++ RemoveMaster() {} + DeviceId deviceid{}; + ChangeMode return_mode{}; + DeviceId return_pointer{}; + DeviceId return_keyboard{}; + }; +- struct AttachSlave { ++ class AttachSlave { ++ public: ++ AttachSlave() {} + DeviceId deviceid{}; + DeviceId master{}; + }; +- struct DetachSlave { ++ class DetachSlave { ++ public: ++ DetachSlave() {} + DeviceId deviceid{}; + }; + absl::optional add_master{}; +@@ -1252,14 +1316,20 @@ + struct DeviceClass { + uint16_t len{}; + DeviceId sourceid{}; +- struct Key { ++ class Key { ++ public: ++ Key() {} + std::vector keys{}; + }; +- struct Button { ++ class Button { ++ public: ++ Button() {} + std::vector state{}; + std::vector labels{}; + }; +- struct Valuator { ++ class Valuator { ++ public: ++ Valuator() {} + uint16_t number{}; + Atom label{}; + Fp3232 min{}; +@@ -1268,17 +1338,23 @@ + uint32_t resolution{}; + ValuatorMode mode{}; + }; +- struct Scroll { ++ class Scroll { ++ public: ++ Scroll() {} + uint16_t number{}; + ScrollType scroll_type{}; + ScrollFlags flags{}; + Fp3232 increment{}; + }; +- struct Touch { ++ class Touch { ++ public: ++ Touch() {} + TouchMode mode{}; + uint8_t num_touches{}; + }; +- struct Gesture { ++ class Gesture { ++ public: ++ Gesture() {} + uint8_t num_touches{}; + }; + absl::optional key{}; +--- a/ui/gfx/x/generated_protos/xkb.h ++++ b/ui/gfx/x/generated_protos/xkb.h +@@ -2179,7 +2179,9 @@ + uint8_t loaded{}; + uint8_t newKeyboard{}; + GBNDetail found{}; +- struct Types { ++ class Types { ++ public: ++ Types() { } + uint8_t getmap_type{}; + uint8_t typeDeviceID{}; + uint16_t getmap_sequence{}; +@@ -2218,7 +2220,9 @@ + absl::optional> modmap_rtrn{}; + absl::optional> vmodmap_rtrn{}; + }; +- struct CompatMap { ++ class CompatMap { ++ public: ++ CompatMap() {} + uint8_t compatmap_type{}; + uint8_t compatDeviceID{}; + uint16_t compatmap_sequence{}; +@@ -2229,7 +2233,9 @@ + std::vector si_rtrn{}; + std::vector group_rtrn{}; + }; +- struct IndicatorMaps { ++ class IndicatorMaps { ++ public: ++ IndicatorMaps() {} + uint8_t indicatormap_type{}; + uint8_t indicatorDeviceID{}; + uint16_t indicatormap_sequence{}; +@@ -2238,7 +2244,9 @@ + uint32_t realIndicators{}; + std::vector maps{}; + }; +- struct KeyNames { ++ class KeyNames { ++ public: ++ KeyNames() {} + uint8_t keyname_type{}; + uint8_t keyDeviceID{}; + uint16_t keyname_sequence{}; +@@ -2270,7 +2278,9 @@ + absl::optional> keyAliases{}; + absl::optional> radioGroupNames{}; + }; +- struct Geometry { ++ class Geometry { ++ public: ++ Geometry() {} + uint8_t geometry_type{}; + uint8_t geometryDeviceID{}; + uint16_t geometry_sequence{}; +--- a/ui/gfx/x/generated_protos/randr.h ++++ b/ui/gfx/x/generated_protos/randr.h +@@ -272,7 +272,9 @@ + static constexpr uint8_t type_id = 4; + static constexpr uint8_t opcode = 1; + uint16_t sequence{}; +- struct Cc { ++ class Cc { ++ public: ++ Cc() {} + Time timestamp{}; + Window window{}; + Crtc crtc{}; +@@ -283,7 +285,9 @@ + uint16_t width{}; + uint16_t height{}; + }; +- struct Oc { ++ class Oc { ++ public: ++ Oc() {} + Time timestamp{}; + Time config_timestamp{}; + Window window{}; +@@ -294,30 +298,40 @@ + RandRConnection connection{}; + Render::SubPixel subpixel_order{}; + }; +- struct Op { ++ class Op { ++ public: ++ Op() {} + Window window{}; + Output output{}; + Atom atom{}; + Time timestamp{}; + Property status{}; + }; +- struct Pc { ++ class Pc { ++ public: ++ Pc() {} + Time timestamp{}; + Window window{}; + Provider provider{}; + }; +- struct Pp { ++ class Pp { ++ public: ++ Pp() {} + Window window{}; + Provider provider{}; + Atom atom{}; + Time timestamp{}; + uint8_t state{}; + }; +- struct Rc { ++ class Rc { ++ public: ++ Rc() {} + Time timestamp{}; + Window window{}; + }; +- struct Lc { ++ class Lc { ++ public: ++ Lc() {} + Time timestamp{}; + Window window{}; + Lease lease{}; diff --git a/common-files/chromium-patches/y-live_anchor_time-constructor/6099.patch b/common-files/chromium-patches/y-live_anchor_time-constructor/6099.patch new file mode 100644 index 000000000..b1bfb484d --- /dev/null +++ b/common-files/chromium-patches/y-live_anchor_time-constructor/6099.patch @@ -0,0 +1,14 @@ +--- a/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.h ++++ b/third_party/blink/renderer/modules/media_controls/elements/media_control_timeline_element.h +@@ -48,7 +48,10 @@ + + private: + // Struct used to track the current live time. +- struct LiveAnchorTime { ++ class LiveAnchorTime { ++ public: ++ LiveAnchorTime() {} ++ + base::TimeTicks clock_time_; + double media_time_ = 0; + }; diff --git a/common-files/chromium-patches/y-loss_based_bwe_v2_config-constructor/6099.patch b/common-files/chromium-patches/y-loss_based_bwe_v2_config-constructor/6099.patch new file mode 100644 index 000000000..bd3f5d95e --- /dev/null +++ b/common-files/chromium-patches/y-loss_based_bwe_v2_config-constructor/6099.patch @@ -0,0 +1,14 @@ +--- a/third_party/webrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2.h ++++ b/third_party/webrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2.h +@@ -81,7 +81,10 @@ + DataRate loss_limited_bandwidth = DataRate::MinusInfinity(); + }; + +- struct Config { ++ class Config { ++ public: ++ Config() {} ++ + double bandwidth_rampup_upper_bound_factor = 0.0; + double rampup_acceleration_max_factor = 0.0; + TimeDelta rampup_acceleration_maxout_time = TimeDelta::Zero(); diff --git a/common-files/chromium-patches/y-race_network_request_info-constructor/6099.patch b/common-files/chromium-patches/y-race_network_request_info-constructor/6099.patch new file mode 100644 index 000000000..87de55b21 --- /dev/null +++ b/common-files/chromium-patches/y-race_network_request_info-constructor/6099.patch @@ -0,0 +1,17 @@ +--- a/third_party/blink/renderer/modules/service_worker/service_worker_global_scope.h ++++ b/third_party/blink/renderer/modules/service_worker/service_worker_global_scope.h +@@ -776,7 +776,13 @@ + + blink::BlinkStorageKey storage_key_; + +- struct RaceNetworkRequestInfo { ++ class RaceNetworkRequestInfo { ++ public: ++ RaceNetworkRequestInfo( ++ int fetch_event_id, ++ String token, ++ mojo::PendingRemote url_loader_factory): ++ fetch_event_id(fetch_event_id), token(token), url_loader_factory(std::move(url_loader_factory)) { } + int fetch_event_id; + String token; + mojo::PendingRemote diff --git a/common-files/chromium-patches/y-shared_image_backing-constructor/6099.patch b/common-files/chromium-patches/y-shared_image_backing-constructor/6099.patch new file mode 100644 index 000000000..b90e46ae4 --- /dev/null +++ b/common-files/chromium-patches/y-shared_image_backing-constructor/6099.patch @@ -0,0 +1,11 @@ +--- a/gpu/command_buffer/service/shared_image/shared_image_backing.h ++++ b/gpu/command_buffer/service/shared_image/shared_image_backing.h +@@ -338,7 +338,7 @@ + private: + class ScopedWriteUMA { + public: +- ScopedWriteUMA() = default; ++ ScopedWriteUMA() {} + + ScopedWriteUMA(const ScopedWriteUMA&) = delete; + ScopedWriteUMA& operator=(const ScopedWriteUMA&) = delete; diff --git a/common-files/chromium-patches/y-view_state-consturctor/6099.patch b/common-files/chromium-patches/y-view_state-consturctor/6099.patch new file mode 100644 index 000000000..4a641449c --- /dev/null +++ b/common-files/chromium-patches/y-view_state-consturctor/6099.patch @@ -0,0 +1,11 @@ +--- a/third_party/blink/renderer/core/loader/history_item.h ++++ b/third_party/blink/renderer/core/loader/history_item.h +@@ -77,7 +77,7 @@ + DISALLOW_NEW(); + + public: +- ViewState() = default; ++ ViewState() {} + ViewState(const ViewState&) = default; + ViewState& operator=(const ViewState&) = default; +