Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package ungoogled-chromium for 
openSUSE:Factory checked in at 2023-10-15 19:26:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ungoogled-chromium (Old)
 and      /work/SRC/openSUSE:Factory/.ungoogled-chromium.new.20540 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ungoogled-chromium"

Sun Oct 15 19:26:12 2023 rev:17 rq:1117703 version:118.0.5993.70

Changes:
--------
--- /work/SRC/openSUSE:Factory/ungoogled-chromium/ungoogled-chromium.changes    
2023-10-06 21:14:54.792873833 +0200
+++ 
/work/SRC/openSUSE:Factory/.ungoogled-chromium.new.20540/ungoogled-chromium.changes
 2023-10-15 19:28:21.198654574 +0200
@@ -1,0 +2,27 @@
+Fri Oct 13 07:40:22 UTC 2023 - Michał Szczepaniak 
<m.szczepaniak....@gmail.com>
+
+- ungoogled-chromium 118.0.5993.70 (boo#1216111)
+  * CVE-2023-5218: Use after free in Site Isolation
+  * CVE-2023-5487: Inappropriate implementation in Fullscreen
+  * CVE-2023-5484: Inappropriate implementation in Navigation
+  * CVE-2023-5475: Inappropriate implementation in DevTools
+  * CVE-2023-5483: Inappropriate implementation in Intents
+  * CVE-2023-5481: Inappropriate implementation in Downloads
+  * CVE-2023-5476: Use after free in Blink History
+  * CVE-2023-5474: Heap buffer overflow in PDF
+  * CVE-2023-5479: Inappropriate implementation in Extensions API
+  * CVE-2023-5485: Inappropriate implementation in Autofill
+  * CVE-2023-5478: Inappropriate implementation in Autofill
+  * CVE-2023-5477: Inappropriate implementation in Installer
+  * CVE-2023-5486: Inappropriate implementation in Input
+  * CVE-2023-5473: Use after free in Cast
+- Build with system freetype (again), and zstd
+- add patches:
+  * chromium-118-system-freetype.patch
+  * chromium-117-system-zstd.patch
+  * chromium-118-includes.patch
+- refresh chromium-117-emplace_back_on_vector-c++20.patch and
+  chromium-117-lp155-constructors.patch to
+  chromium-118-no_matching_constructor.patch
+
+-------------------------------------------------------------------

Old:
----
  117.0.5938.149-1.tar.gz
  chromium-117-emplace_back_on_vector-c++20.patch
  chromium-117-lp155-constructors.patch
  chromium-117.0.5938.149.tar.xz

New:
----
  118.0.5993.70-1.tar.gz
  chromium-117-system-zstd.patch
  chromium-118-includes.patch
  chromium-118-no_matching_constructor.patch
  chromium-118-system-freetype.patch
  chromium-118.0.5993.70.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ ungoogled-chromium.spec ++++++
--- /var/tmp/diff_new_pack.PpHF3t/_old  2023-10-15 19:29:15.880624378 +0200
+++ /var/tmp/diff_new_pack.PpHF3t/_new  2023-10-15 19:29:15.884624523 +0200
@@ -41,6 +41,7 @@
 %bcond_without system_icu
 %bcond_without ffmpeg_51
 %bcond_without qt6
+%bcond_without system_zstd
 %else
 %bcond_with system_harfbuzz
 %bcond_with system_freetype
@@ -48,6 +49,7 @@
 %bcond_with system_icu
 %bcond_with ffmpeg_51
 %bcond_with qt6
+%bcond_with system_zstd
 %endif
 # LLVM version
 %define llvm_version 15
@@ -77,7 +79,7 @@
 %endif
 # Package names
 Name:           ungoogled-chromium
-Version:        117.0.5938.149
+Version:        118.0.5993.70
 Release:        0
 Summary:        Google's open source browser project
 License:        BSD-3-Clause AND LGPL-2.1-or-later
@@ -126,15 +128,17 @@
 Patch217:       chromium-117-workaround_clang_bug-structured_binding.patch
 Patch218:       chromium-114-lld-argument.patch
 Patch221:       chromium-115-lp155-typename.patch
-Patch223:       chromium-117-emplace_back_on_vector-c++20.patch
 Patch224:       chromium-115-compiler-SkColor4f.patch
 Patch229:       chromium-116-lp155-url_load_stats-size-t.patch
 Patch232:       chromium-116-lp155-typenames.patch
-Patch237:       chromium-117-lp155-constructors.patch
 Patch238:       chromium-117-blink-BUILD-mnemonic.patch
 Patch239:       chromium-117-includes.patch
 Patch240:       chromium-117-string-convert.patch
 Patch241:       chromium-117-lp155-typename.patch
+Patch242:       chromium-118-includes.patch
+Patch243:       chromium-118-system-freetype.patch
+Patch244:       chromium-117-system-zstd.patch
+Patch245:       chromium-118-no_matching_constructor.patch
 BuildRequires:  SDL-devel
 BuildRequires:  bison
 BuildRequires:  cups-devel
@@ -326,6 +330,9 @@
 %if %{with system_webp}
 BuildRequires:  pkgconfig(libwebp) >= 0.4.0
 %endif
+%if %{with system_zstd}
+BuildRequires:  pkgconfig(libzstd) = 1.5.5
+%endif
 %if %{with clang}
 %if 0%{?suse_version} < 1550
 BuildRequires:  clang%{llvm_version}
@@ -628,7 +635,6 @@
     third_party/xcbproto
     third_party/xnnpack
     third_party/zlib/google
-    third_party/zstd
     third_party/zxcvbn-cpp
     url/third_party/mozilla
     v8/src/third_party/siphash
@@ -679,6 +685,9 @@
 %if !%{with system_webp}
 keeplibs+=( third_party/libwebp )
 %endif
+%if !%{with system_zstd}
+keeplibs+=( third_party/zstd )
+%endif
 build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove
 
 # GN sets lto on its own and we need just ldflag options, not cflags
@@ -796,6 +805,9 @@
 %if %{with system_webp}
 gn_system_libraries+=( libwebp )
 %endif
+%if %{with system_zstd}
+gn_system_libraries+=( zstd )
+%endif
 build/linux/unbundle/replace_gn_files.py --system-libraries 
${gn_system_libraries[@]}
 
 # Create the configuration for GN

++++++ 117.0.5938.149-1.tar.gz -> 118.0.5993.70-1.tar.gz ++++++
++++ 6423 lines of diff (skipped)

++++++ README.SUSE ++++++
--- /var/tmp/diff_new_pack.PpHF3t/_old  2023-10-15 19:29:16.052630575 +0200
+++ /var/tmp/diff_new_pack.PpHF3t/_new  2023-10-15 19:29:16.056630719 +0200
@@ -6,4 +6,5 @@
 Gentoo - 
https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files
 Fedora - https://src.fedoraproject.org/rpms/chromium/tree/rawhide
 Arch - 
https://github.com/archlinux/svntogit-packages/tree/packages/chromium/trunk
+Arch: https://gitlab.com/Matt.Jolly/chromium-patches/
 

++++++ chromium-110-compiler.patch ++++++
--- /var/tmp/diff_new_pack.PpHF3t/_old  2023-10-15 19:29:16.080631583 +0200
+++ /var/tmp/diff_new_pack.PpHF3t/_new  2023-10-15 19:29:16.084631727 +0200
@@ -7,11 +7,11 @@
  build/config/compiler/BUILD.gn | 134 +++++----------------------------
  1 file changed, 17 insertions(+), 117 deletions(-)
 
-Index: chromium-115.0.5790.32/build/config/compiler/BUILD.gn
+Index: chromium-118.0.5993.18/build/config/compiler/BUILD.gn
 ===================================================================
---- chromium-115.0.5790.32.orig/build/config/compiler/BUILD.gn
-+++ chromium-115.0.5790.32/build/config/compiler/BUILD.gn
-@@ -302,9 +302,7 @@ config("compiler") {
+--- chromium-118.0.5993.18.orig/build/config/compiler/BUILD.gn
++++ chromium-118.0.5993.18/build/config/compiler/BUILD.gn
+@@ -310,9 +310,7 @@ config("compiler") {
  
    configs += [
      # See the definitions below.
@@ -21,7 +21,7 @@
      ":compiler_codegen",
      ":compiler_deterministic",
    ]
-@@ -570,37 +568,6 @@ config("compiler") {
+@@ -580,37 +578,6 @@ config("compiler") {
      ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
    }
  
@@ -59,7 +59,7 @@
    # C11/C++11 compiler flags setup.
    # ---------------------------
    if (is_linux || is_chromeos || is_android || (is_nacl && is_clang) ||
-@@ -1436,46 +1403,6 @@ config("compiler_deterministic") {
+@@ -1453,46 +1420,6 @@ config("compiler_deterministic") {
      }
    }
  
@@ -106,7 +106,7 @@
    # Tells the compiler not to use absolute paths when passing the default
    # paths to the tools it invokes. We don't want this because we don't
    # really need it and it can mess up the goma cache entries.
-@@ -1494,27 +1421,6 @@ config("compiler_deterministic") {
+@@ -1511,27 +1438,6 @@ config("compiler_deterministic") {
    }
  }
  
@@ -134,7 +134,7 @@
  config("rustc_revision") {
    if (rustc_revision != "") {
      # Similar to the above config, this is here so that all files get 
recompiled
-@@ -1804,7 +1710,7 @@ config("chromium_code") {
+@@ -1864,7 +1770,7 @@ config("chromium_code") {
        defines = [ "_HAS_NODISCARD" ]
      }
    } else {
@@ -143,7 +143,7 @@
      if (treat_warnings_as_errors) {
        cflags += [ "-Werror" ]
  
-@@ -1813,10 +1719,6 @@ config("chromium_code") {
+@@ -1873,10 +1779,6 @@ config("chromium_code") {
        # well.
        ldflags = [ "-Werror" ]
      }
@@ -154,7 +154,7 @@
  
      if (treat_warnings_as_errors) {
        # Turn rustc warnings into the "deny" lint level, which produce compiler
-@@ -1834,16 +1736,6 @@ config("chromium_code") {
+@@ -1894,23 +1796,6 @@ config("chromium_code") {
        "__STDC_FORMAT_MACROS",
      ]
  
@@ -165,13 +165,20 @@
 -      # Non-chromium code is not guaranteed to compile cleanly with
 -      # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
 -      # disabled, so only do that for Release build.
--      defines += [ "_FORTIFY_SOURCE=2" ]
+-      fortify_level = "2"
+-
+-      # ChromeOS supports a high-quality _FORTIFY_SOURCE=3 implementation
+-      # with a few custom glibc patches. Use that if it's available.
+-      if (is_chromeos_ash) {
+-        fortify_level = "3"
+-      }
+-      defines += [ "_FORTIFY_SOURCE=" + fortify_level ]
 -    }
 -
      if (is_apple) {
        cflags_objc = [ "-Wimplicit-retain-self" ]
        cflags_objcc = [ "-Wimplicit-retain-self" ]
-@@ -2212,7 +2104,8 @@ config("default_stack_frames") {
+@@ -2277,7 +2162,8 @@ config("default_stack_frames") {
  }
  
  # Default "optimization on" config.
@@ -181,7 +188,7 @@
    if (is_win) {
      if (chrome_pgo_phase != 2) {
        # Favor size over speed, /O1 must be before the common flags.
-@@ -2271,7 +2164,8 @@ config("optimize") {
+@@ -2336,7 +2222,8 @@ config("optimize") {
  }
  
  # Turn off optimizations.
@@ -191,7 +198,7 @@
    if (is_win) {
      cflags = [
        "/Od",  # Disable optimization.
-@@ -2311,7 +2205,8 @@ config("no_optimize") {
+@@ -2376,7 +2263,8 @@ config("no_optimize") {
  # Turns up the optimization level. On Windows, this implies whole program
  # optimization and link-time code generation which is very expensive and 
should
  # be used sparingly.
@@ -201,7 +208,7 @@
    if (is_nacl && is_nacl_irt) {
      # The NaCl IRT is a special case and always wants its own config.
      # Various components do:
-@@ -2344,7 +2239,8 @@ config("optimize_max") {
+@@ -2409,7 +2297,8 @@ config("optimize_max") {
  #
  # TODO(crbug.com/621335) - rework how all of these configs are related
  # so that we don't need this disclaimer.
@@ -211,7 +218,7 @@
    if (is_nacl && is_nacl_irt) {
      # The NaCl IRT is a special case and always wants its own config.
      # Various components do:
-@@ -2370,7 +2266,8 @@ config("optimize_speed") {
+@@ -2435,7 +2324,8 @@ config("optimize_speed") {
    }
  }
  
@@ -221,7 +228,7 @@
    cflags = [ "-O1" ] + common_optimize_on_cflags
    rustflags = [ "-Copt-level=1" ]
    ldflags = common_optimize_on_ldflags
-@@ -2495,7 +2392,8 @@ config("win_pdbaltpath") {
+@@ -2568,7 +2458,8 @@ config("win_pdbaltpath") {
  }
  
  # Full symbols.
@@ -231,7 +238,7 @@
    rustflags = []
    if (is_win) {
      if (is_clang) {
-@@ -2638,7 +2536,8 @@ config("symbols") {
+@@ -2717,7 +2608,8 @@ config("symbols") {
  # Minimal symbols.
  # This config guarantees to hold symbol for stack trace which are shown to 
user
  # when crash happens in unittests running on buildbot.
@@ -241,7 +248,7 @@
    rustflags = []
    if (is_win) {
      # Functions, files, and line tables only.
-@@ -2723,7 +2622,8 @@ config("minimal_symbols") {
+@@ -2802,7 +2694,8 @@ config("minimal_symbols") {
  # This configuration contains function names only. That is, the compiler is
  # told to not generate debug information and the linker then just puts 
function
  # names in the final debug information.

++++++ chromium-117-includes.patch ++++++
--- /var/tmp/diff_new_pack.PpHF3t/_old  2023-10-15 19:29:16.116632880 +0200
+++ /var/tmp/diff_new_pack.PpHF3t/_new  2023-10-15 19:29:16.120633024 +0200
@@ -27,10 +27,10 @@
 [  863s]                                 std::abs
 [  863s] 3 warnings and 2 errors generated.
 
-Index: 
chromium-117.0.5938.22/third_party/material_color_utilities/src/cpp/palettes/tones.cc
+Index: 
chromium-118.0.5993.18/third_party/material_color_utilities/src/cpp/palettes/tones.cc
 ===================================================================
---- 
chromium-117.0.5938.22.orig/third_party/material_color_utilities/src/cpp/palettes/tones.cc
-+++ 
chromium-117.0.5938.22/third_party/material_color_utilities/src/cpp/palettes/tones.cc
+--- 
chromium-118.0.5993.18.orig/third_party/material_color_utilities/src/cpp/palettes/tones.cc
++++ 
chromium-118.0.5993.18/third_party/material_color_utilities/src/cpp/palettes/tones.cc
 @@ -18,6 +18,7 @@
  
  #include "cpp/cam/cam.h"
@@ -39,18 +39,12 @@
  
  namespace material_color_utilities {
  
-[ 3262s] In file included from ../third_party/ipcz/src/ipcz/route_edge.cc:5:
-[ 3262s] In file included from ../third_party/ipcz/src/ipcz/route_edge.h:8:
-[ 3262s] ../third_party/ipcz/src/ipcz/router_link.h:73:34: error: no template 
named 'unique_ptr' in namespace 'std'
-[ 3262s]                             std::unique_ptr<Parcel> parcel) = 0;
-[ 3262s]                             ~~~~~^
-[ 3262s] 1 error generated.
-Index: chromium-117.0.5938.22/third_party/ipcz/src/ipcz/router_link.h
+Index: chromium-118.0.5993.18/third_party/ipcz/src/ipcz/router_link.h
 ===================================================================
---- chromium-117.0.5938.22.orig/third_party/ipcz/src/ipcz/router_link.h
-+++ chromium-117.0.5938.22/third_party/ipcz/src/ipcz/router_link.h
-@@ -9,6 +9,7 @@
- #include <functional>
+--- chromium-118.0.5993.18.orig/third_party/ipcz/src/ipcz/router_link.h
++++ chromium-118.0.5993.18/third_party/ipcz/src/ipcz/router_link.h
+@@ -10,6 +10,7 @@
+ #include <memory>
  #include <string>
  #include <utility>
 +#include <memory>

++++++ chromium-117-system-zstd.patch ++++++
>From ae3ae3711784865bdc38bf119a6182a7b8dae91c Mon Sep 17 00:00:00 2001
From: Matt Jolly <Matt.Jolly@footclan.ninja>
Date: Sun, 17 Sep 2023 16:51:42 +1000
Subject: [PATCH] Add system-zstd

--- a/build/linux/unbundle/replace_gn_files.py
+++ b/build/linux/unbundle/replace_gn_files.py
@@ -74,6 +74,7 @@ REPLACEMENTS = {
   #
   'woff2': 'third_party/woff2/BUILD.gn',
   'zlib': 'third_party/zlib/BUILD.gn',
+  'zstd': 'third_party/zstd/BUILD.gn',
 }
 
 
--- /dev/null
+++ b/build/linux/unbundle/zstd.gn
@@ -0,0 +1,25 @@
+import("//build/config/linux/pkg_config.gni")
+import("//build/shim_headers.gni")
+
+pkg_config("system_zstd") {
+  packages = [ "libzstd" ]
+}
+
+shim_headers("zstd_shim") {
+  root_path = "src/lib"
+  headers = [
+    "zdict.h",
+    "zstd.h",
+    "zstd_errors.h",
+  ]
+}
+
+source_set("zstd") {
+  deps = [ ":zstd_shim" ]
+  public_configs = [ ":system_zstd" ]
+}
+
+source_set("decompress") {
+  deps = [ ":zstd_shim" ]
+  public_configs = [ ":system_zstd" ]
+}
-- 
2.42.0


++++++ chromium-117-workaround_clang_bug-structured_binding.patch ++++++
--- /var/tmp/diff_new_pack.PpHF3t/_old  2023-10-15 19:29:16.140633745 +0200
+++ /var/tmp/diff_new_pack.PpHF3t/_new  2023-10-15 19:29:16.144633889 +0200
@@ -1,6 +1,7 @@
-diff -up 
chromium-115.0.5790.24/media/base/cdm_promise_adapter.cc.workaround_clang_bug-structured_binding
 chromium-115.0.5790.24/media/base/cdm_promise_adapter.cc
---- 
chromium-115.0.5790.24/media/base/cdm_promise_adapter.cc.workaround_clang_bug-structured_binding
   2023-06-07 21:48:37.000000000 +0200
-+++ chromium-115.0.5790.24/media/base/cdm_promise_adapter.cc   2023-06-17 
16:53:20.216628557 +0200
+Index: chromium-118.0.5993.18/media/base/cdm_promise_adapter.cc
+===================================================================
+--- chromium-118.0.5993.18.orig/media/base/cdm_promise_adapter.cc
++++ chromium-118.0.5993.18/media/base/cdm_promise_adapter.cc
 @@ -94,7 +94,9 @@ void CdmPromiseAdapter::RejectPromise(ui
  void CdmPromiseAdapter::Clear(ClearReason reason) {
    // Reject all outstanding promises.
@@ -12,10 +13,11 @@
      TRACE_EVENT_NESTABLE_ASYNC_END1(
          "media", "CdmPromise", TRACE_ID_WITH_SCOPE("CdmPromise", promise_id),
          "status", "cleared");
-diff -up 
chromium-115.0.5790.24/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.cc.workaround_clang_bug-structured_binding
 
chromium-115.0.5790.24/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.cc
---- 
chromium-115.0.5790.24/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.cc.workaround_clang_bug-structured_binding
  2023-06-07 21:48:41.000000000 +0200
-+++ 
chromium-115.0.5790.24/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.cc
  2023-06-17 18:47:06.001403966 +0200
-@@ -655,8 +658,10 @@ NGGridSizingTree NGGridLayoutAlgorithm::
+Index: 
chromium-118.0.5993.18/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.cc
+===================================================================
+--- 
chromium-118.0.5993.18.orig/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.cc
++++ 
chromium-118.0.5993.18/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.cc
+@@ -633,8 +633,10 @@ NGGridSizingTree NGGridLayoutAlgorithm::
    NGGridSizingTree sizing_tree;
  
    if (const auto* layout_subtree = ConstraintSpace().GridLayoutSubtree()) {
@@ -28,7 +30,7 @@
  
      const auto& node = Node();
      grid_items =
-@@ -1798,8 +1803,10 @@ void NGGridLayoutAlgorithm::CompleteTrac
+@@ -1837,8 +1839,10 @@ void NGGridLayoutAlgorithm::CompleteTrac
      bool* opt_needs_additional_pass) const {
    DCHECK(sizing_subtree);
  
@@ -41,7 +43,7 @@
  
    const bool is_for_columns = track_direction == kForColumns;
    const bool has_non_definite_track =
-@@ -1924,8 +1931,10 @@ template <typename CallbackFunc>
+@@ -1984,8 +1988,10 @@ template <typename CallbackFunc>
  void NGGridLayoutAlgorithm::ForEachSubgrid(
      const NGGridSizingSubtree& sizing_subtree,
      const CallbackFunc& callback_func) const {
@@ -54,23 +56,7 @@
  
    // If we know this subtree doesn't have nested subgrids we can exit early
    // instead of iterating over every grid item looking for them.
-diff -up 
chromium-115.0.5790.32/content/browser/service_worker/service_worker_context_wrapper.cc.me
 
chromium-115.0.5790.32/content/browser/service_worker/service_worker_context_wrapper.cc
---- 
chromium-115.0.5790.32/content/browser/service_worker/service_worker_context_wrapper.cc.me
 2023-06-19 08:04:02.287072722 +0200
-+++ 
chromium-115.0.5790.32/content/browser/service_worker/service_worker_context_wrapper.cc
    2023-06-19 08:18:24.576814950 +0200
-@@ -1393,7 +1393,8 @@ void ServiceWorkerContextWrapper::MaybeP
-     return;
-   }
- 
--  auto [document_url, key, callback] = std::move(*request);
-+  auto [d_u, key, callback] = std::move(*request);
-+  auto document_url = d_u;
- 
-   DCHECK(document_url.is_valid());
-   TRACE_EVENT1("ServiceWorker",
-diff -up 
chromium-117.0.5938.62/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.cc.me
 
chromium-117.0.5938.62/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.cc
---- 
chromium-117.0.5938.62/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.cc.me
       2023-09-15 13:03:00.787257048 +0200
-+++ 
chromium-117.0.5938.62/third_party/blink/renderer/core/layout/ng/grid/ng_grid_layout_algorithm.cc
  2023-09-15 13:15:05.502706522 +0200
-@@ -3437,7 +3437,10 @@ void NGGridLayoutAlgorithm::PlaceGridIte
+@@ -3452,7 +3458,10 @@ void NGGridLayoutAlgorithm::PlaceGridIte
    DCHECK(out_row_break_between);
  
    const auto& container_space = ConstraintSpace();
@@ -82,7 +68,7 @@
  
    const auto* cached_layout_subtree = container_space.GridLayoutSubtree();
    const auto container_writing_direction =
-@@ -3601,7 +3604,10 @@ void NGGridLayoutAlgorithm::PlaceGridIte
+@@ -3616,7 +3625,10 @@ void NGGridLayoutAlgorithm::PlaceGridIte
  
    // TODO(ikilpatrick): Update |SetHasSeenAllChildren| and early exit if true.
    const auto& constraint_space = ConstraintSpace();
@@ -94,17 +80,18 @@
  
    const auto* cached_layout_subtree = constraint_space.GridLayoutSubtree();
    const auto container_writing_direction =
-diff -up 
chromium-117.0.5938.62/chrome/browser/ui/autofill/chrome_autofill_client.cc.me 
chromium-117.0.5938.62/chrome/browser/ui/autofill/chrome_autofill_client.cc
---- 
chromium-117.0.5938.62/chrome/browser/ui/autofill/chrome_autofill_client.cc.me  
   2023-09-15 18:24:18.984133783 +0200
-+++ 
chromium-117.0.5938.62/chrome/browser/ui/autofill/chrome_autofill_client.cc     
   2023-09-15 18:28:50.420833595 +0200
-@@ -1100,7 +1100,8 @@ void ChromeAutofillClient::PropagateAuto
-           &renderer_form);
-     }
- 
--    for (const auto& [frame_token, frame_forms] : renderer_forms_by_frame) {
-+    for (const auto& [f_t, frame_forms] : renderer_forms_by_frame) {
-+      auto& frame_token = f_t;
-       // Attempt to find the RFH with this `frame_token`.
-       content::RenderFrameHost* rfh = nullptr;
-       GetWebContents().ForEachRenderFrameHost(
+Index: 
chromium-118.0.5993.18/content/browser/service_worker/service_worker_context_wrapper.cc
+===================================================================
+--- 
chromium-118.0.5993.18.orig/content/browser/service_worker/service_worker_context_wrapper.cc
++++ 
chromium-118.0.5993.18/content/browser/service_worker/service_worker_context_wrapper.cc
+@@ -1409,7 +1409,8 @@ void ServiceWorkerContextWrapper::MaybeP
+     return;
+   }
+ 
+-  auto [document_url, key, callback] = std::move(*request);
++  auto [d_u, key, callback] = std::move(*request);
++  auto document_url = d_u;
+ 
+   DCHECK(document_url.is_valid());
+   TRACE_EVENT1("ServiceWorker",
 

++++++ chromium-118-includes.patch ++++++
Index: 
chromium-118.0.5993.18/services/device/public/cpp/generic_sensor/sensor_reading.h
===================================================================
--- 
chromium-118.0.5993.18.orig/services/device/public/cpp/generic_sensor/sensor_reading.h
+++ 
chromium-118.0.5993.18/services/device/public/cpp/generic_sensor/sensor_reading.h
@@ -6,6 +6,8 @@
 #define SERVICES_DEVICE_PUBLIC_CPP_GENERIC_SENSOR_SENSOR_READING_H_
 
 #include <type_traits>
+#include <stdint.h>
+#include <cstddef>
 
 namespace device {
 
Index: chromium-118.0.5993.18/components/gwp_asan/client/lightweight_detector.h
===================================================================
--- 
chromium-118.0.5993.18.orig/components/gwp_asan/client/lightweight_detector.h
+++ chromium-118.0.5993.18/components/gwp_asan/client/lightweight_detector.h
@@ -5,6 +5,8 @@
 #ifndef COMPONENTS_GWP_ASAN_CLIENT_LIGHTWEIGHT_DETECTOR_H_
 #define COMPONENTS_GWP_ASAN_CLIENT_LIGHTWEIGHT_DETECTOR_H_
 
+#include <atomic>
+
 #include "base/gtest_prod_util.h"
 #include "components/gwp_asan/client/export.h"
 #include "components/gwp_asan/common/lightweight_detector_state.h"

++++++ chromium-118-no_matching_constructor.patch ++++++
diff -up chromium-116.0.5845.50/net/dns/host_resolver_cache.cc.me 
chromium-116.0.5845.50/net/dns/host_resolver_cache.cc
--- chromium-116.0.5845.50/net/dns/host_resolver_cache.cc.me
+++ chromium-116.0.5845.50/net/dns/host_resolver_cache.cc
@@ -161,7 +161,7 @@ void HostResolverCache::Set(
 
   std::string domain_name = result->domain_name();
   entries_.emplace(
-      Key(std::move(domain_name), network_anonymization_key),
+      Key{std::move(domain_name), network_anonymization_key},
       Entry(std::move(result), source, secure, staleness_generation_));
 
   if (entries_.size() > max_entries_) {
diff -up 
chromium-116.0.5845.50/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc.me
 
chromium-116.0.5845.50/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc
--- 
chromium-116.0.5845.50/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc.me
        2023-08-02 15:17:52.613858423 +0200
+++ 
chromium-116.0.5845.50/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc
   2023-08-02 15:18:43.269790877 +0200
@@ -1496,7 +1496,7 @@ void SkiaOutputSurfaceImplOnGpu::CopyOut
 
       // Issue readbacks from the surfaces:
       for (size_t i = 0; i < CopyOutputResult::kNV12MaxPlanes; ++i) {
-        SkISize size(plane_surfaces[i]->width(), plane_surfaces[i]->height());
+        SkISize size{plane_surfaces[i]->width(), plane_surfaces[i]->height()};
         SkImageInfo dst_info = SkImageInfo::Make(
             size, (i == 0) ? kAlpha_8_SkColorType : kR8G8_unorm_SkColorType,
             kUnpremul_SkAlphaType);
diff -up 
chromium-116.0.5845.50/third_party/blink/renderer/platform/fonts/palette_interpolation.cc.me
 
chromium-116.0.5845.50/third_party/blink/renderer/platform/fonts/palette_interpolation.cc
--- 
chromium-116.0.5845.50/third_party/blink/renderer/platform/fonts/palette_interpolation.cc.me
        2023-08-02 21:32:14.195705494 +0200
+++ 
chromium-116.0.5845.50/third_party/blink/renderer/platform/fonts/palette_interpolation.cc
   2023-08-02 21:59:08.156532934 +0200
@@ -31,7 +31,7 @@ Vector<FontPalette::FontPaletteOverride>
         color_interpolation_space, hue_interpolation_method, start_color,
         end_color, percentage, alpha_multiplier);
 
-    FontPalette::FontPaletteOverride result_color_record(i, result_color);
+    FontPalette::FontPaletteOverride result_color_record{static_cast<int>(i), 
result_color};
     result_color_records.push_back(result_color_record);
   }
   return result_color_records;
diff -up chromium-116.0.5845.50/ui/base/wayland/color_manager_util.h.me 
chromium-116.0.5845.50/ui/base/wayland/color_manager_util.h
--- chromium-116.0.5845.50/ui/base/wayland/color_manager_util.h.me      
2023-08-03 08:27:11.371750178 +0200
+++ chromium-116.0.5845.50/ui/base/wayland/color_manager_util.h 2023-08-03 
10:39:07.266989323 +0200
@@ -52,53 +52,53 @@ constexpr auto kChromaticityMap = base::
     zcr_color_manager_v1_chromaticity_names,
     PrimaryVersion>(
     {{ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_BT601_525_LINE,
-      PrimaryVersion(gfx::ColorSpace::PrimaryID::SMPTE170M,
-                     kDefaultSinceVersion)},
+      PrimaryVersion{gfx::ColorSpace::PrimaryID::SMPTE170M,
+                     kDefaultSinceVersion}},
      {ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_BT601_625_LINE,
-      PrimaryVersion(gfx::ColorSpace::PrimaryID::BT470BG,
-                     kDefaultSinceVersion)},
+      PrimaryVersion{gfx::ColorSpace::PrimaryID::BT470BG,
+                     kDefaultSinceVersion}},
      {ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_SMPTE170M,
-      PrimaryVersion(gfx::ColorSpace::PrimaryID::SMPTE170M,
-                     kDefaultSinceVersion)},
+      PrimaryVersion{gfx::ColorSpace::PrimaryID::SMPTE170M,
+                     kDefaultSinceVersion}},
      {ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_BT709,
-      PrimaryVersion(gfx::ColorSpace::PrimaryID::BT709, kDefaultSinceVersion)},
+      PrimaryVersion{gfx::ColorSpace::PrimaryID::BT709, kDefaultSinceVersion}},
      {ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_BT2020,
-      PrimaryVersion(gfx::ColorSpace::PrimaryID::BT2020, 
kDefaultSinceVersion)},
+      PrimaryVersion{gfx::ColorSpace::PrimaryID::BT2020, 
kDefaultSinceVersion}},
      {ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_SRGB,
-      PrimaryVersion(gfx::ColorSpace::PrimaryID::BT709, kDefaultSinceVersion)},
+      PrimaryVersion{gfx::ColorSpace::PrimaryID::BT709, kDefaultSinceVersion}},
      {ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_DISPLAYP3,
-      PrimaryVersion(gfx::ColorSpace::PrimaryID::P3, kDefaultSinceVersion)},
+      PrimaryVersion{gfx::ColorSpace::PrimaryID::P3, kDefaultSinceVersion}},
      {ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_ADOBERGB,
-      PrimaryVersion(gfx::ColorSpace::PrimaryID::ADOBE_RGB,
-                     kDefaultSinceVersion)},
+      PrimaryVersion{gfx::ColorSpace::PrimaryID::ADOBE_RGB,
+                     kDefaultSinceVersion}},
      {ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_WIDE_GAMUT_COLOR_SPIN,
-      PrimaryVersion(
+      PrimaryVersion{
           gfx::ColorSpace::PrimaryID::WIDE_GAMUT_COLOR_SPIN,
-          
ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_WIDE_GAMUT_COLOR_SPIN_SINCE_VERSION)},
+          
ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_WIDE_GAMUT_COLOR_SPIN_SINCE_VERSION}},
      {ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_BT470M,
-      PrimaryVersion(
+      PrimaryVersion{
           gfx::ColorSpace::PrimaryID::BT470M,
-          ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_BT470M_SINCE_VERSION)},
+          ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_BT470M_SINCE_VERSION}},
      {ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_SMPTE240M,
-      PrimaryVersion(
+      PrimaryVersion{
           gfx::ColorSpace::PrimaryID::SMPTE240M,
-          ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_SMPTE240M_SINCE_VERSION)},
+          ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_SMPTE240M_SINCE_VERSION}},
      {ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_XYZ_D50,
-      PrimaryVersion(
+      PrimaryVersion{
           gfx::ColorSpace::PrimaryID::XYZ_D50,
-          ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_XYZ_D50_SINCE_VERSION)},
+          ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_XYZ_D50_SINCE_VERSION}},
      {ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_SMPTEST428_1,
-      PrimaryVersion(
+      PrimaryVersion{
           gfx::ColorSpace::PrimaryID::SMPTEST428_1,
-          ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_SMPTEST428_1_SINCE_VERSION)},
+          ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_SMPTEST428_1_SINCE_VERSION}},
      {ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_SMPTEST431_2,
-      PrimaryVersion(
+      PrimaryVersion{
           gfx::ColorSpace::PrimaryID::SMPTEST431_2,
-          ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_SMPTEST431_2_SINCE_VERSION)},
+          ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_SMPTEST431_2_SINCE_VERSION}},
      {ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_FILM,
-      PrimaryVersion(
+      PrimaryVersion{
           gfx::ColorSpace::PrimaryID::FILM,
-          ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_FILM_SINCE_VERSION)}});
+          ZCR_COLOR_MANAGER_V1_CHROMATICITY_NAMES_FILM_SINCE_VERSION}}});
 
 // A map from the zcr_color_manager_v1 eotf_names enum values
 // representing well-known EOTFs, to their equivalent TransferIDs.
@@ -107,65 +107,65 @@ constexpr auto kEotfMap = base::MakeFixe
     zcr_color_manager_v1_eotf_names,
     TransferVersion>({
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_LINEAR,
-     TransferVersion(gfx::ColorSpace::TransferID::LINEAR,
-                     kDefaultSinceVersion)},
+     TransferVersion{gfx::ColorSpace::TransferID::LINEAR,
+                     kDefaultSinceVersion}},
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_SRGB,
-     TransferVersion(gfx::ColorSpace::TransferID::SRGB, kDefaultSinceVersion)},
+     TransferVersion{gfx::ColorSpace::TransferID::SRGB, kDefaultSinceVersion}},
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_BT709,
-     TransferVersion(gfx::ColorSpace::TransferID::BT709,
-                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_BT709_SINCE_VERSION)},
+     TransferVersion{gfx::ColorSpace::TransferID::BT709,
+                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_BT709_SINCE_VERSION}},
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_BT2087,
-     TransferVersion(gfx::ColorSpace::TransferID::GAMMA24,
-                     kDefaultSinceVersion)},
+     TransferVersion{gfx::ColorSpace::TransferID::GAMMA24,
+                     kDefaultSinceVersion}},
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_ADOBERGB,
      // This is ever so slightly inaccurate. The number ought to be
      // 2.19921875f, not 2.2
-     TransferVersion(gfx::ColorSpace::TransferID::GAMMA22,
-                     kDefaultSinceVersion)},
+     TransferVersion{gfx::ColorSpace::TransferID::GAMMA22,
+                     kDefaultSinceVersion}},
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_PQ,
-     TransferVersion(gfx::ColorSpace::TransferID::PQ, kDefaultSinceVersion)},
+     TransferVersion{gfx::ColorSpace::TransferID::PQ, kDefaultSinceVersion}},
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_HLG,
-     TransferVersion(gfx::ColorSpace::TransferID::HLG,
-                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_HLG_SINCE_VERSION)},
+     TransferVersion{gfx::ColorSpace::TransferID::HLG,
+                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_HLG_SINCE_VERSION}},
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_SMPTE170M,
-     TransferVersion(gfx::ColorSpace::TransferID::SMPTE170M,
-                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_SMPTE170M_SINCE_VERSION)},
+     TransferVersion{gfx::ColorSpace::TransferID::SMPTE170M,
+                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_SMPTE170M_SINCE_VERSION}},
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_SMPTE240M,
-     TransferVersion(gfx::ColorSpace::TransferID::SMPTE240M,
-                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_SMPTE240M_SINCE_VERSION)},
+     TransferVersion{gfx::ColorSpace::TransferID::SMPTE240M,
+                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_SMPTE240M_SINCE_VERSION}},
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_SMPTEST428_1,
-     TransferVersion(
+     TransferVersion{
          gfx::ColorSpace::TransferID::SMPTEST428_1,
-         ZCR_COLOR_MANAGER_V1_EOTF_NAMES_SMPTEST428_1_SINCE_VERSION)},
+         ZCR_COLOR_MANAGER_V1_EOTF_NAMES_SMPTEST428_1_SINCE_VERSION}},
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_LOG,
-     TransferVersion(gfx::ColorSpace::TransferID::LOG,
-                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_LOG_SINCE_VERSION)},
+     TransferVersion{gfx::ColorSpace::TransferID::LOG,
+                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_LOG_SINCE_VERSION}},
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_LOG_SQRT,
-     TransferVersion(gfx::ColorSpace::TransferID::LOG_SQRT,
-                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_LOG_SQRT_SINCE_VERSION)},
+     TransferVersion{gfx::ColorSpace::TransferID::LOG_SQRT,
+                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_LOG_SQRT_SINCE_VERSION}},
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_IEC61966_2_4,
-     TransferVersion(
+     TransferVersion{
          gfx::ColorSpace::TransferID::IEC61966_2_4,
-         ZCR_COLOR_MANAGER_V1_EOTF_NAMES_IEC61966_2_4_SINCE_VERSION)},
+         ZCR_COLOR_MANAGER_V1_EOTF_NAMES_IEC61966_2_4_SINCE_VERSION}},
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_BT1361_ECG,
-     TransferVersion(gfx::ColorSpace::TransferID::BT1361_ECG,
-                     
ZCR_COLOR_MANAGER_V1_EOTF_NAMES_BT1361_ECG_SINCE_VERSION)},
+     TransferVersion{gfx::ColorSpace::TransferID::BT1361_ECG,
+                     
ZCR_COLOR_MANAGER_V1_EOTF_NAMES_BT1361_ECG_SINCE_VERSION}},
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_BT2020_10,
-     TransferVersion(gfx::ColorSpace::TransferID::BT2020_10,
-                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_BT2020_10_SINCE_VERSION)},
+     TransferVersion{gfx::ColorSpace::TransferID::BT2020_10,
+                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_BT2020_10_SINCE_VERSION}},
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_BT2020_12,
-     TransferVersion(gfx::ColorSpace::TransferID::BT2020_12,
-                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_BT2020_12_SINCE_VERSION)},
+     TransferVersion{gfx::ColorSpace::TransferID::BT2020_12,
+                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_BT2020_12_SINCE_VERSION}},
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_SCRGB_LINEAR_80_NITS,
-     TransferVersion(
+     TransferVersion{
          gfx::ColorSpace::TransferID::SCRGB_LINEAR_80_NITS,
-         ZCR_COLOR_MANAGER_V1_EOTF_NAMES_SCRGB_LINEAR_80_NITS_SINCE_VERSION)},
+         ZCR_COLOR_MANAGER_V1_EOTF_NAMES_SCRGB_LINEAR_80_NITS_SINCE_VERSION}},
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_GAMMA18,
-     TransferVersion(gfx::ColorSpace::TransferID::GAMMA18,
-                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_GAMMA18_SINCE_VERSION)},
+     TransferVersion{gfx::ColorSpace::TransferID::GAMMA18,
+                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_GAMMA18_SINCE_VERSION}},
     {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_GAMMA28,
-     TransferVersion(gfx::ColorSpace::TransferID::GAMMA28,
-                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_GAMMA28_SINCE_VERSION)},
+     TransferVersion{gfx::ColorSpace::TransferID::GAMMA28,
+                     ZCR_COLOR_MANAGER_V1_EOTF_NAMES_GAMMA28_SINCE_VERSION}},
 });
 
 // A map from the SDR zcr_color_manager_v1 eotf_names enum values
@@ -174,18 +174,18 @@ constexpr auto kEotfMap = base::MakeFixe
 constexpr auto kTransferMap =
     base::MakeFixedFlatMap<zcr_color_manager_v1_eotf_names, 
TransferFnVersion>({
         {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_LINEAR,
-         TransferFnVersion(SkNamedTransferFn::kLinear, kDefaultSinceVersion)},
+         TransferFnVersion{SkNamedTransferFn::kLinear, kDefaultSinceVersion}},
         {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_SRGB,
-         TransferFnVersion(SkNamedTransferFnExt::kSRGB, kDefaultSinceVersion)},
+         TransferFnVersion{SkNamedTransferFnExt::kSRGB, kDefaultSinceVersion}},
         {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_BT709,
-         TransferFnVersion(
+         TransferFnVersion{
              SkNamedTransferFnExt::kRec709,
-             ZCR_COLOR_MANAGER_V1_EOTF_NAMES_BT709_SINCE_VERSION)},
+             ZCR_COLOR_MANAGER_V1_EOTF_NAMES_BT709_SINCE_VERSION}},
         {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_BT2087,
-         TransferFnVersion(gamma24, kDefaultSinceVersion)},
+         TransferFnVersion{gamma24, kDefaultSinceVersion}},
         {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_ADOBERGB,
-         TransferFnVersion(SkNamedTransferFnExt::kA98RGB,
-                           kDefaultSinceVersion)},
+         TransferFnVersion{SkNamedTransferFnExt::kA98RGB,
+                           kDefaultSinceVersion}},
     });
 
 // A map from the HDR zcr_color_manager_v1 eotf_names enum values
@@ -194,68 +194,68 @@ constexpr auto kTransferMap =
 constexpr auto kHDRTransferMap =
     base::MakeFixedFlatMap<zcr_color_manager_v1_eotf_names, TransferFnVersion>(
         {{ZCR_COLOR_MANAGER_V1_EOTF_NAMES_LINEAR,
-          TransferFnVersion(SkNamedTransferFn::kLinear, kDefaultSinceVersion)},
+          TransferFnVersion{SkNamedTransferFn::kLinear, kDefaultSinceVersion}},
          {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_SRGB,
-          TransferFnVersion(SkNamedTransferFnExt::kSRGB, 
kDefaultSinceVersion)},
+          TransferFnVersion{SkNamedTransferFnExt::kSRGB, 
kDefaultSinceVersion}},
          {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_PQ,
-          TransferFnVersion(SkNamedTransferFn::kPQ, kDefaultSinceVersion)},
+          TransferFnVersion{SkNamedTransferFn::kPQ, kDefaultSinceVersion}},
          {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_HLG,
-          TransferFnVersion(SkNamedTransferFn::kHLG,
-                            
ZCR_COLOR_MANAGER_V1_EOTF_NAMES_HLG_SINCE_VERSION)},
+          TransferFnVersion{SkNamedTransferFn::kHLG,
+                            
ZCR_COLOR_MANAGER_V1_EOTF_NAMES_HLG_SINCE_VERSION}},
          {ZCR_COLOR_MANAGER_V1_EOTF_NAMES_EXTENDEDSRGB10,
-          TransferFnVersion(
+          TransferFnVersion{
               SkNamedTransferFnExt::kSRGBExtended1023Over510,
-              ZCR_COLOR_MANAGER_V1_EOTF_NAMES_EXTENDEDSRGB10_SINCE_VERSION)}});
+              ZCR_COLOR_MANAGER_V1_EOTF_NAMES_EXTENDEDSRGB10_SINCE_VERSION}}});
 
 // A map from zcr_color_manager_v1 matrix_names enum values to
 // gfx::ColorSpace::MatrixIDs.
 constexpr auto kMatrixMap =
     base::MakeFixedFlatMap<zcr_color_manager_v1_matrix_names, MatrixVersion>(
         {{ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_RGB,
-          MatrixVersion(gfx::ColorSpace::MatrixID::RGB, kDefaultSinceVersion)},
+          MatrixVersion{gfx::ColorSpace::MatrixID::RGB, kDefaultSinceVersion}},
          {ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_BT709,
-          MatrixVersion(gfx::ColorSpace::MatrixID::BT709,
-                        kDefaultSinceVersion)},
+          MatrixVersion{gfx::ColorSpace::MatrixID::BT709,
+                        kDefaultSinceVersion}},
          {ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_BT470BG,
-          MatrixVersion(
+          MatrixVersion{
               gfx::ColorSpace::MatrixID::BT470BG,
-              ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_BT470BG_SINCE_VERSION)},
+              ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_BT470BG_SINCE_VERSION}},
          {ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_BT2020_NCL,
-          MatrixVersion(gfx::ColorSpace::MatrixID::BT2020_NCL,
-                        kDefaultSinceVersion)},
+          MatrixVersion{gfx::ColorSpace::MatrixID::BT2020_NCL,
+                        kDefaultSinceVersion}},
          {ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_BT2020_CL,
-          MatrixVersion(gfx::ColorSpace::MatrixID::BT2020_CL,
-                        kDefaultSinceVersion)},
+          MatrixVersion{gfx::ColorSpace::MatrixID::BT2020_CL,
+                        kDefaultSinceVersion}},
          {ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_FCC,
-          MatrixVersion(gfx::ColorSpace::MatrixID::FCC, kDefaultSinceVersion)},
+          MatrixVersion{gfx::ColorSpace::MatrixID::FCC, kDefaultSinceVersion}},
          {ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_YCOCG,
-          MatrixVersion(gfx::ColorSpace::MatrixID::YCOCG,
-                        
ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_YCOCG_SINCE_VERSION)},
+          MatrixVersion{gfx::ColorSpace::MatrixID::YCOCG,
+                        
ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_YCOCG_SINCE_VERSION}},
          {ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_YDZDX,
-          MatrixVersion(gfx::ColorSpace::MatrixID::YDZDX,
-                        
ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_YDZDX_SINCE_VERSION)},
+          MatrixVersion{gfx::ColorSpace::MatrixID::YDZDX,
+                        
ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_YDZDX_SINCE_VERSION}},
          {ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_GBR,
-          MatrixVersion(gfx::ColorSpace::MatrixID::GBR,
-                        ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_GBR_SINCE_VERSION)},
+          MatrixVersion{gfx::ColorSpace::MatrixID::GBR,
+                        ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_GBR_SINCE_VERSION}},
          {ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_SMPTE170M,
-          MatrixVersion(gfx::ColorSpace::MatrixID::SMPTE170M,
-                        kDefaultSinceVersion)},
+          MatrixVersion{gfx::ColorSpace::MatrixID::SMPTE170M,
+                        kDefaultSinceVersion}},
          {ZCR_COLOR_MANAGER_V1_MATRIX_NAMES_SMPTE240M,
-          MatrixVersion(gfx::ColorSpace::MatrixID::SMPTE240M,
-                        kDefaultSinceVersion)}});
+          MatrixVersion{gfx::ColorSpace::MatrixID::SMPTE240M,
+                        kDefaultSinceVersion}}});
 
 // A map from zcr_color_manager_v1 range_names enum values to
 // gfx::ColorSpace::RangeIDs.
 constexpr auto kRangeMap =
     base::MakeFixedFlatMap<zcr_color_manager_v1_range_names, RangeVersion>(
         {{ZCR_COLOR_MANAGER_V1_RANGE_NAMES_LIMITED,
-          RangeVersion(gfx::ColorSpace::RangeID::LIMITED,
-                       kDefaultSinceVersion)},
+          RangeVersion{gfx::ColorSpace::RangeID::LIMITED,
+                       kDefaultSinceVersion}},
          {ZCR_COLOR_MANAGER_V1_RANGE_NAMES_FULL,
-          RangeVersion(gfx::ColorSpace::RangeID::FULL, kDefaultSinceVersion)},
+          RangeVersion{gfx::ColorSpace::RangeID::FULL, kDefaultSinceVersion}},
          {ZCR_COLOR_MANAGER_V1_RANGE_NAMES_DERIVED,
-          RangeVersion(gfx::ColorSpace::RangeID::DERIVED,
-                       kDefaultSinceVersion)}});
+          RangeVersion{gfx::ColorSpace::RangeID::DERIVED,
+                       kDefaultSinceVersion}}});
 
 zcr_color_manager_v1_chromaticity_names ToColorManagerChromaticity(
     gfx::ColorSpace::PrimaryID primaryID,
diff -up 
chromium-116.0.5845.50/chrome/browser/ui/omnibox/chrome_omnibox_client.cc.me 
chromium-116.0.5845.50/chrome/browser/ui/omnibox/chrome_omnibox_client.cc
--- 
chromium-116.0.5845.50/chrome/browser/ui/omnibox/chrome_omnibox_client.cc.me    
    2023-08-03 13:23:33.748394615 +0200
+++ chromium-116.0.5845.50/chrome/browser/ui/omnibox/chrome_omnibox_client.cc   
2023-08-03 13:25:01.140489840 +0200
@@ -470,10 +470,10 @@ void ChromeOmniboxClient::OnAutocomplete
               alternative_nav_match);
 
   // Store the details necessary to open the omnibox match via browser 
commands.
-  location_bar_->set_navigation_params(LocationBar::NavigationParams(
+  location_bar_->set_navigation_params(LocationBar::NavigationParams{
       destination_url, disposition, transition, match_selection_timestamp,
       destination_url_entered_without_scheme,
-      destination_url_entered_with_http_scheme));
+      destination_url_entered_with_http_scheme});
 
   if (browser_) {
     auto navigation = chrome::OpenCurrentURL(browser_);
diff -up chromium-117.0.5938.62/net/dns/host_resolver_cache.cc.me 
chromium-117.0.5938.62/net/dns/host_resolver_cache.cc
diff -up 
chromium-117.0.5938.62/third_party/blink/renderer/platform/fonts/font_palette.h.me
 chromium-117.0.5938.62/third_party/blink/renderer/platform/fonts/font_palette.h
--- 
chromium-117.0.5938.62/third_party/blink/renderer/platform/fonts/font_palette.h.me
  2023-09-15 10:48:41.330294241 +0200
+++ 
chromium-117.0.5938.62/third_party/blink/renderer/platform/fonts/font_palette.h 
    2023-09-15 10:51:24.501324416 +0200
@@ -96,7 +96,7 @@ class PLATFORM_EXPORT FontPalette : publ
       Color::ColorSpace color_interpolation_space,
       absl::optional<Color::HueInterpolationMethod> hue_interpolation_method) {
     return base::AdoptRef(new FontPalette(
-        start, end, NonNormalizedPercentages(start_percentage, end_percentage),
+        start, end, NonNormalizedPercentages{start_percentage, end_percentage},
         normalized_percentage, alpha_multiplier, color_interpolation_space,
         hue_interpolation_method));
   }
@@ -170,7 +170,7 @@ class PLATFORM_EXPORT FontPalette : publ
       double normalized_percentage) {
     double end_percentage = normalized_percentage * 100.0;
     double start_percentage = 100.0 - end_percentage;
-    return NonNormalizedPercentages(start_percentage, end_percentage);
+    return NonNormalizedPercentages{start_percentage, end_percentage};
   }
 
   double GetAlphaMultiplier() const {
diff -up 
chromium-117.0.5938.62/content/browser/renderer_host/render_frame_host_impl.cc.me
 chromium-117.0.5938.62/content/browser/renderer_host/render_frame_host_impl.cc
--- 
chromium-117.0.5938.62/content/browser/renderer_host/render_frame_host_impl.cc.me
   2023-09-15 12:17:35.664861257 +0200
+++ 
chromium-117.0.5938.62/content/browser/renderer_host/render_frame_host_impl.cc  
    2023-09-15 12:21:06.112694256 +0200
@@ -8509,7 +8509,7 @@ void RenderFrameHostImpl::SendFencedFram
   for (const blink::FencedFrame::ReportingDestination& destination :
        destinations) {
     SendFencedFrameReportingBeaconInternal(
-        DestinationEnumEvent(event_type, event_data), destination,
+        DestinationEnumEvent{event_type, event_data}, destination,
         /*from_renderer=*/true, attribution_reporting_runtime_features,
         GetFrameTreeNodeId());
   }
@@ -8545,7 +8545,7 @@ void RenderFrameHostImpl::SendFencedFram
   }
 
   SendFencedFrameReportingBeaconInternal(
-      DestinationURLEvent(destination_url),
+      DestinationURLEvent{destination_url},
       blink::FencedFrame::ReportingDestination::kBuyer,
       /*from_renderer=*/true, attribution_reporting_runtime_features,
       GetFrameTreeNodeId());
@@ -8617,8 +8617,8 @@ void RenderFrameHostImpl::MaybeSendFence
   for (blink::FencedFrame::ReportingDestination destination :
        info->destinations) {
     initiator_rfh->SendFencedFrameReportingBeaconInternal(
-        DestinationEnumEvent(blink::kFencedFrameTopNavigationBeaconType,
-                             info->data),
+        DestinationEnumEvent{blink::kFencedFrameTopNavigationBeaconType,
+                             info->data},
         destination,
         /*from_renderer=*/false, info->attribution_reporting_runtime_features,
         GetFrameTreeNodeId(), navigation_request.GetNavigationId());
diff -up 
chromium-117.0.5938.62/chrome/browser/enterprise/profile_management/profile_management_navigation_throttle.cc.me
 
chromium-117.0.5938.62/chrome/browser/enterprise/profile_management/profile_management_navigation_throttle.cc
--- 
chromium-117.0.5938.62/chrome/browser/enterprise/profile_management/profile_management_navigation_throttle.cc.me
    2023-09-15 22:04:09.233356627 +0200
+++ 
chromium-117.0.5938.62/chrome/browser/enterprise/profile_management/profile_management_navigation_throttle.cc
       2023-09-15 22:05:44.126063992 +0200
@@ -67,8 +67,8 @@ base::flat_map<std::string, SAMLProfileA
   // TODO(crbug.com/1445072): Add actual domains with attribute names.
   profile_attributes->insert(std::make_pair(
       "supported.test",
-      SAMLProfileAttributes("placeholderName", "placeholderDomain",
-                            "placeholderToken")));
+      SAMLProfileAttributes{"placeholderName", "placeholderDomain",
+                            "placeholderToken"}));
 
   // Extract domains and attributes from the command line switch.
   const base::CommandLine& command_line =
diff -up chromium-115.0.5790.40/chrome/test/chromedriver/capabilities.cc.me 
chromium-115.0.5790.40/chrome/test/chromedriver/capabilities.cc
--- chromium-115.0.5790.40/chrome/test/chromedriver/capabilities.cc.me  
2023-06-25 10:06:58.445990069 +0200
+++ chromium-115.0.5790.40/chrome/test/chromedriver/capabilities.cc     
2023-06-25 10:51:17.640818231 +0200
@@ -355,7 +355,7 @@ Status ParseMobileEmulation(const base::
                         "'version' field of type string");
         }
 
-        brands.emplace_back(*brand, *version);
+        brands.emplace_back() = {*brand, *version};
       }
 
       client_hints.brands = std::move(brands);
@@ -392,7 +392,7 @@ Status ParseMobileEmulation(const base::
                         "a 'version' field of type string");
         }
 
-        full_version_list.emplace_back(*brand, *version);
+        full_version_list.emplace_back() = {*brand, *version};
       }
 
       client_hints.full_version_list = std::move(full_version_list);
diff -up 
chromium-116.0.5845.96/chrome/browser/content_settings/one_time_permission_provider.cc.me
 
chromium-116.0.5845.96/chrome/browser/content_settings/one_time_permission_provider.cc
--- 
chromium-116.0.5845.96/chrome/browser/content_settings/one_time_permission_provider.cc.me
   2023-08-15 21:34:58.922855428 +0200
+++ 
chromium-116.0.5845.96/chrome/browser/content_settings/one_time_permission_provider.cc
      2023-08-15 21:39:23.310434237 +0200
@@ -207,8 +207,8 @@ void OneTimePermissionProvider::OnSuspen
 
       while (rule_iterator && rule_iterator->HasNext()) {
         auto rule = rule_iterator->Next();
-        patterns_to_delete.emplace_back(setting_type, rule->primary_pattern,
-                                        rule->secondary_pattern);
+        patterns_to_delete.emplace_back() = {setting_type, 
rule->primary_pattern,
+                                        rule->secondary_pattern};
         permissions::PermissionUmaUtil::RecordOneTimePermissionEvent(
             setting_type,
             permissions::OneTimePermissionEvent::EXPIRED_ON_SUSPEND);
@@ -302,8 +302,8 @@ void OneTimePermissionProvider::DeleteEn
     auto rule = rule_iterator->Next();
     if (rule->primary_pattern.Matches(origin_gurl) &&
         rule->secondary_pattern.Matches(origin_gurl)) {
-      patterns_to_delete.emplace_back(
-          content_setting_type, rule->primary_pattern, 
rule->secondary_pattern);
+      patterns_to_delete.emplace_back() = {
+          content_setting_type, rule->primary_pattern, 
rule->secondary_pattern};
       permissions::PermissionUmaUtil::RecordOneTimePermissionEvent(
           content_setting_type, trigger_event);
     }
diff -up chromium-117.0.5938.62/base/trace_event/trace_log.cc.me 
chromium-117.0.5938.62/base/trace_event/trace_log.cc
--- chromium-117.0.5938.62/base/trace_event/trace_log.cc.me     2023-09-13 
20:14:42.441248781 +0200
+++ chromium-117.0.5938.62/base/trace_event/trace_log.cc        2023-09-13 
20:16:12.186638601 +0200
@@ -2187,8 +2187,8 @@ void TraceLog::SetTraceBufferForTesting(
 #if BUILDFLAG(USE_PERFETTO_CLIENT_LIBRARY)
 void TraceLog::OnSetup(const perfetto::DataSourceBase::SetupArgs& args) {
   AutoLock lock(track_event_lock_);
-  track_event_sessions_.emplace_back(args.internal_instance_index, 
*args.config,
-                                     args.backend_type);
+  track_event_sessions_.emplace_back() = {args.internal_instance_index, 
*args.config,
+                                     args.backend_type};
 }
 
 void TraceLog::OnStart(const perfetto::DataSourceBase::StartArgs&) {
diff -up chromium-117.0.5938.62/content/browser/download/save_package.cc.me 
chromium-117.0.5938.62/content/browser/download/save_package.cc
--- chromium-117.0.5938.62/content/browser/download/save_package.cc.me  
2023-09-15 12:02:43.866622591 +0200
+++ chromium-117.0.5938.62/content/browser/download/save_package.cc     
2023-09-15 12:03:58.715984511 +0200
@@ -764,8 +764,8 @@ void SavePackage::Finish() {
   if (download_) {
     std::vector<download::DownloadSaveItemData::ItemInfo> files;
     for (auto& item : saved_success_items_) {
-      files.emplace_back(item.second->full_path(), item.second->url(),
-                         item.second->referrer().url);
+      files.emplace_back() = {item.second->full_path(), item.second->url(),
+                         item.second->referrer().url};
     }
     download::DownloadSaveItemData::AttachItemData(download_, 
std::move(files));
   }
diff -up chromium-117.0.5938.62/ui/gtk/gtk_ui.cc.me 
chromium-117.0.5938.62/ui/gtk/gtk_ui.cc
--- chromium-117.0.5938.62/ui/gtk/gtk_ui.cc.me  2023-09-15 20:29:42.626502343 
+0200
+++ chromium-117.0.5938.62/ui/gtk/gtk_ui.cc     2023-09-15 20:36:18.763091179 
+0200
@@ -955,11 +955,11 @@ ui::DisplayConfig GtkUi::GetDisplayConfi
     GdkRectangle geometry;
     gdk_monitor_get_geometry(monitor, &geometry);
     int monitor_scale = std::max(1, gdk_monitor_get_scale_factor(monitor));
-    config.display_geometries.emplace_back(
+    config.display_geometries.emplace_back() = {
         gfx::Rect(monitor_scale * geometry.x, monitor_scale * geometry.y,
                   monitor_scale * geometry.width,
                   monitor_scale * geometry.height),
-        monitor_scale * font_scale);
+        static_cast<float>(monitor_scale * font_scale)};
   }
   return config;
 }
diff -up 
chromium-118.0.5993.54/components/autofill/core/browser/contact_info_sync_util.cc.me
 
chromium-118.0.5993.54/components/autofill/core/browser/contact_info_sync_util.cc
--- 
chromium-118.0.5993.54/components/autofill/core/browser/contact_info_sync_util.cc.me
        2023-10-06 10:38:52.473145692 +0200
+++ 
chromium-118.0.5993.54/components/autofill/core/browser/contact_info_sync_util.cc
   2023-10-06 10:37:30.268617169 +0200
@@ -174,9 +174,9 @@ class ContactInfoProfileSetter {
     CHECK(observations.empty());
     for (const sync_pb::ContactInfoSpecifics::Observation& proto_observation :
          proto_observations) {
-      observations.emplace_back(proto_observation.type(),
+      observations.emplace_back() = {static_cast<unsigned 
char>(proto_observation.type()),
                                 ProfileTokenQuality::FormSignatureHash(
-                                    proto_observation.form_hash()));
+                                    proto_observation.form_hash())};
     }
   }
 
diff -up 
chromium-118.0.5993.54/components/autofill/core/browser/webdata/autofill_sync_bridge_util.cc.me
 
chromium-118.0.5993.54/components/autofill/core/browser/webdata/autofill_sync_bridge_util.cc
--- 
chromium-118.0.5993.54/components/autofill/core/browser/webdata/autofill_sync_bridge_util.cc.me
     2023-10-06 10:41:37.746402215 +0200
+++ 
chromium-118.0.5993.54/components/autofill/core/browser/webdata/autofill_sync_bridge_util.cc
        2023-10-06 10:42:28.469562927 +0200
@@ -553,11 +553,11 @@ ServerCvc AutofillWalletCvcStructDataFro
   base::StringToInt64(wallet_credential_specifics.instrument_id(),
                       &instrument_id);
 
-  return ServerCvc(
+  return ServerCvc{
       instrument_id, base::UTF8ToUTF16(wallet_credential_specifics.cvc()),
       base::Time::UnixEpoch() +
           base::Milliseconds(wallet_credential_specifics
-                                 .last_updated_time_unix_epoch_millis()));
+                                 .last_updated_time_unix_epoch_millis())};
 }
 
 VirtualCardUsageData VirtualCardUsageDataFromUsageSpecifics(
diff -up 
chromium-118.0.5993.54/content/browser/webid/idp_network_request_manager.cc.me 
chromium-118.0.5993.54/content/browser/webid/idp_network_request_manager.cc
--- 
chromium-118.0.5993.54/content/browser/webid/idp_network_request_manager.cc.me  
    2023-10-06 13:46:57.287089040 +0200
+++ chromium-118.0.5993.54/content/browser/webid/idp_network_request_manager.cc 
2023-10-06 13:47:25.450632156 +0200
@@ -604,7 +604,7 @@ void OnTokenRequestParsed(
     if (response_error) {
       int error_code = response_error->FindInt(kErrorCodeKey).value_or(0);
       GURL error_url = ExtractUrl(*response_error, kErrorUrlKey);
-      token_result.error = TokenError(error_code, error_url);
+      token_result.error = TokenError{error_code, error_url};
     }
   }
 

++++++ chromium-118-system-freetype.patch ++++++
https://github.com/chromium/chromium/commit/ed354d00aeda84693611b14baa56a287557a26b5
>From ed354d00aeda84693611b14baa56a287557a26b5 Mon Sep 17 00:00:00 2001
From: Munira Tursunova <moon...@google.com>
Date: Tue, 12 Sep 2023 11:54:48 +0000
Subject: [PATCH] Add check for use_system_freetype when importing private
 freetype header
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

In [0] the include of private freetype header was added, which caused
build breakage when use_system_freetype=true, see [1].

This CL fixes the breakage by introducing USE_SYSTEM_FREETYPE build flag.

[0] https://chromium-review.googlesource.com/c/chromium/src/+/4717485
[1] 
https://chromium-review.googlesource.com/c/chromium/src/+/4717485/comments/cdfca7b9_8e61b2e0

Bug: 1429581
Change-Id: I7f7de4cdb2dc46092a91a47d766bedb58ddccb7c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4843428
Commit-Queue: Munira Tursunova <moon...@google.com>
Reviewed-by: Dominik Röttsches <dr...@chromium.org>
Reviewed-by: Rick Byers <rby...@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1195323}
---
 third_party/BUILD.gn                                 |  6 ++++++
 third_party/blink/renderer/platform/BUILD.gn         |  1 +
 .../renderer/platform/fonts/simple_font_data.cc      | 12 +++++++++++-
 3 files changed, 18 insertions(+), 1 deletion(-)

diff --git a/third_party/BUILD.gn b/third_party/BUILD.gn
index 7b086f95413ffd0..4ce797ebad72211 100644
--- a/third_party/BUILD.gn
+++ b/third_party/BUILD.gn
@@ -2,6 +2,7 @@
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
 
+import("//build/buildflag_header.gni")
 import("//build/config/features.gni")
 import("//build/config/freetype/freetype.gni")
 import("//third_party/harfbuzz-ng/harfbuzz.gni")
@@ -65,3 +66,8 @@ component("freetype_harfbuzz") {
     public_deps += [ "//third_party/harfbuzz-ng:harfbuzz_source" ]
   }
 }
+
+buildflag_header("freetype_buildflags") {
+  header = "freetype_buildflags.h"
+  flags = [ "USE_SYSTEM_FREETYPE=$use_system_freetype" ]
+}
diff --git a/third_party/blink/renderer/platform/BUILD.gn 
b/third_party/blink/renderer/platform/BUILD.gn
index 591d2f939605b01..f6a2cd2168d1ee5 100644
--- a/third_party/blink/renderer/platform/BUILD.gn
+++ b/third_party/blink/renderer/platform/BUILD.gn
@@ -1717,6 +1717,7 @@ component("platform") {
     "//services/viz/public/cpp/gpu",
     "//skia",
     "//skia:skcms",
+    "//third_party:freetype_buildflags",
     "//third_party:freetype_harfbuzz",
     "//third_party/abseil-cpp:absl",
     "//third_party/blink/public:image_resources",
diff --git a/third_party/blink/renderer/platform/fonts/simple_font_data.cc 
b/third_party/blink/renderer/platform/fonts/simple_font_data.cc
index abe06f35c14a5e0..b2bfd88f0d85db5 100644
--- a/third_party/blink/renderer/platform/fonts/simple_font_data.cc
+++ b/third_party/blink/renderer/platform/fonts/simple_font_data.cc
@@ -48,7 +48,7 @@
 #include "third_party/blink/renderer/platform/wtf/math_extras.h"
 #include "third_party/blink/renderer/platform/wtf/text/character_names.h"
 #include "third_party/blink/renderer/platform/wtf/text/unicode.h"
-#include "third_party/freetype/src/src/autofit/afws-decl.h"
+#include "third_party/freetype_buildflags.h"
 #include "third_party/skia/include/core/SkFontMetrics.h"
 #include "third_party/skia/include/core/SkPath.h"
 #include "third_party/skia/include/core/SkTypeface.h"
@@ -57,12 +57,22 @@
 #include "ui/gfx/geometry/skia_conversions.h"
 #include "v8/include/v8.h"
 
+#if !BUILDFLAG(USE_SYSTEM_FREETYPE)
+#include "third_party/freetype/src/src/autofit/afws-decl.h"
+#endif
+
 namespace blink {
 
 constexpr float kSmallCapsFontSizeMultiplier = 0.7f;
 constexpr float kEmphasisMarkFontSizeMultiplier = 0.5f;
+
+#if !BUILDFLAG(USE_SYSTEM_FREETYPE)
 constexpr int32_t kFontObjectsMemoryConsumption =
     std::max(sizeof(AF_LatinMetricsRec), sizeof(AF_CJKMetricsRec));
+#else
+// sizeof(AF_LatinMetricsRec) = 2128
+constexpr int32_t kFontObjectsMemoryConsumption = 2128;
+#endif
 
 SimpleFontData::SimpleFontData(const FontPlatformData& platform_data,
                                scoped_refptr<CustomFontData> custom_data,

++++++ chromium-117.0.5938.149.tar.xz -> chromium-118.0.5993.70.tar.xz ++++++
/work/SRC/openSUSE:Factory/ungoogled-chromium/chromium-117.0.5938.149.tar.xz 
/work/SRC/openSUSE:Factory/.ungoogled-chromium.new.20540/chromium-118.0.5993.70.tar.xz
 differ: char 15, line 1

++++++ chromium-93-ffmpeg-4.4.patch ++++++
--- /var/tmp/diff_new_pack.PpHF3t/_old  2023-10-15 19:29:16.196635762 +0200
+++ /var/tmp/diff_new_pack.PpHF3t/_new  2023-10-15 19:29:16.200635906 +0200
@@ -21,10 +21,11 @@
  media/filters/ffmpeg_demuxer.cc         | 16 ++++++++++++++++
  2 files changed, 20 insertions(+)
 
-diff --git a/media/filters/audio_decoder_unittest.cc 
b/media/filters/audio_decoder_unittest.cc
---- a/media/filters/audio_decoder_unittest.cc
-+++ b/media/filters/audio_decoder_unittest.cc
-@@ -109,7 +109,11 @@ void SetDiscardPadding(AVPacket* packet,
+Index: chromium-118.0.5993.18/media/filters/audio_decoder_unittest.cc
+===================================================================
+--- chromium-118.0.5993.18.orig/media/filters/audio_decoder_unittest.cc
++++ chromium-118.0.5993.18/media/filters/audio_decoder_unittest.cc
+@@ -108,7 +108,11 @@ void SetDiscardPadding(AVPacket* packet,
    }
  
    // If the timestamp is positive, try to use FFmpeg's discard data.
@@ -36,32 +37,13 @@
    const uint32_t* skip_samples_ptr =
        reinterpret_cast<const uint32_t*>(av_packet_get_side_data(
            packet, AV_PKT_DATA_SKIP_SAMPLES, &skip_samples_size));
-diff --git a/media/filters/ffmpeg_demuxer.cc b/media/filters/ffmpeg_demuxer.cc
---- a/media/filters/ffmpeg_demuxer.cc
-+++ b/media/filters/ffmpeg_demuxer.cc
-@@ -427,11 +427,19 @@ void FFmpegDemuxerStream::EnqueuePacket(
-   scoped_refptr<DecoderBuffer> buffer;
- 
-   if (type() == DemuxerStream::TEXT) {
-+#if LIBAVUTIL_VERSION_MAJOR < 57
-+    int id_size = 0;
-+#else
-     size_t id_size = 0;
-+#endif
-     uint8_t* id_data = av_packet_get_side_data(
-         packet.get(), AV_PKT_DATA_WEBVTT_IDENTIFIER, &id_size);
- 
-+#if LIBAVUTIL_VERSION_MAJOR < 57
-+    int settings_size = 0;
-+#else
-     size_t settings_size = 0;
-+#endif
-     uint8_t* settings_data = av_packet_get_side_data(
-         packet.get(), AV_PKT_DATA_WEBVTT_SETTINGS, &settings_size);
- 
-@@ -443,7 +451,11 @@ void FFmpegDemuxerStream::EnqueuePacket(
-     buffer = DecoderBuffer::CopyFrom(packet->data, packet->size,
-                                      side_data.data(), side_data.size());
+Index: chromium-118.0.5993.18/media/filters/ffmpeg_demuxer.cc
+===================================================================
+--- chromium-118.0.5993.18.orig/media/filters/ffmpeg_demuxer.cc
++++ chromium-118.0.5993.18/media/filters/ffmpeg_demuxer.cc
+@@ -398,7 +398,11 @@ void FFmpegDemuxerStream::EnqueuePacket(
+     // TODO(crbug.com/1471504): This is now broken without side data; remove.
+     buffer = DecoderBuffer::CopyFrom(packet->data, packet->size);
    } else {
 +#if LIBAVUTIL_VERSION_MAJOR < 57
 +    int side_data_size = 0;
@@ -71,7 +53,7 @@
      uint8_t* side_data = av_packet_get_side_data(
          packet.get(), AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL, &side_data_size);
  
-@@ -504,7 +516,11 @@ void FFmpegDemuxerStream::EnqueuePacket(
+@@ -461,7 +465,11 @@ void FFmpegDemuxerStream::EnqueuePacket(
                                         packet->size - data_offset);
      }
  

++++++ chromium-norar.patch ++++++
--- /var/tmp/diff_new_pack.PpHF3t/_old  2023-10-15 19:29:16.224636771 +0200
+++ /var/tmp/diff_new_pack.PpHF3t/_new  2023-10-15 19:29:16.228636915 +0200
@@ -1,7 +1,7 @@
-Index: 
chromium-117.0.5938.22/chrome/browser/safe_browsing/download_protection/file_analyzer.cc
+Index: 
chromium-118.0.5993.18/chrome/browser/safe_browsing/download_protection/file_analyzer.cc
 ===================================================================
---- 
chromium-117.0.5938.22.orig/chrome/browser/safe_browsing/download_protection/file_analyzer.cc
-+++ 
chromium-117.0.5938.22/chrome/browser/safe_browsing/download_protection/file_analyzer.cc
+--- 
chromium-118.0.5993.18.orig/chrome/browser/safe_browsing/download_protection/file_analyzer.cc
++++ 
chromium-118.0.5993.18/chrome/browser/safe_browsing/download_protection/file_analyzer.cc
 @@ -77,8 +77,6 @@ void FileAnalyzer::Start(const base::Fil
  
    if (inspection_type == DownloadFileType::ZIP) {
@@ -11,10 +11,10 @@
  #if BUILDFLAG(IS_MAC)
    } else if (inspection_type == DownloadFileType::DMG) {
      StartExtractDmgFeatures();
-Index: chromium-117.0.5938.22/chrome/utility/safe_browsing/archive_analyzer.cc
+Index: chromium-118.0.5993.18/chrome/utility/safe_browsing/archive_analyzer.cc
 ===================================================================
---- 
chromium-117.0.5938.22.orig/chrome/utility/safe_browsing/archive_analyzer.cc
-+++ chromium-117.0.5938.22/chrome/utility/safe_browsing/archive_analyzer.cc
+--- 
chromium-118.0.5993.18.orig/chrome/utility/safe_browsing/archive_analyzer.cc
++++ chromium-118.0.5993.18/chrome/utility/safe_browsing/archive_analyzer.cc
 @@ -8,7 +8,6 @@
  #include "build/build_config.h"
  #include "build/buildflag.h"
@@ -34,10 +34,10 @@
      return std::make_unique<ZipAnalyzer>();
    } else if (file_type == DownloadFileType::SEVEN_ZIP) {
      return std::make_unique<SevenZipAnalyzer>();
-Index: chromium-117.0.5938.22/chrome/common/safe_browsing/BUILD.gn
+Index: chromium-118.0.5993.18/chrome/common/safe_browsing/BUILD.gn
 ===================================================================
---- chromium-117.0.5938.22.orig/chrome/common/safe_browsing/BUILD.gn
-+++ chromium-117.0.5938.22/chrome/common/safe_browsing/BUILD.gn
+--- chromium-118.0.5993.18.orig/chrome/common/safe_browsing/BUILD.gn
++++ chromium-118.0.5993.18/chrome/common/safe_browsing/BUILD.gn
 @@ -137,7 +137,6 @@ source_set("safe_browsing") {
        "//components/safe_browsing/content/common:file_type_policies",
        "//components/safe_browsing/core/common",
@@ -46,20 +46,20 @@
      ]
  
      public_deps = [
-Index: 
chromium-117.0.5938.22/chrome/services/file_util/safe_archive_analyzer.cc
+Index: 
chromium-118.0.5993.18/chrome/services/file_util/safe_archive_analyzer.cc
 ===================================================================
---- 
chromium-117.0.5938.22.orig/chrome/services/file_util/safe_archive_analyzer.cc
-+++ chromium-117.0.5938.22/chrome/services/file_util/safe_archive_analyzer.cc
-@@ -73,6 +73,7 @@ void SafeArchiveAnalyzer::AnalyzeRarFile
-     base::File rar_file,
+--- 
chromium-118.0.5993.18.orig/chrome/services/file_util/safe_archive_analyzer.cc
++++ chromium-118.0.5993.18/chrome/services/file_util/safe_archive_analyzer.cc
+@@ -74,6 +74,7 @@ void SafeArchiveAnalyzer::AnalyzeRarFile
+     const absl::optional<std::string>& password,
      mojo::PendingRemote<chrome::mojom::TemporaryFileGetter> temp_file_getter,
      AnalyzeRarFileCallback callback) {
 +#if 0
    DCHECK(rar_file.IsValid());
    temp_file_getter_.Bind(std::move(temp_file_getter));
    callback_ = std::move(callback);
-@@ -91,6 +92,9 @@ void SafeArchiveAnalyzer::AnalyzeRarFile
-                         /*password=*/absl::nullopt,
+@@ -90,6 +91,9 @@ void SafeArchiveAnalyzer::AnalyzeRarFile
+                         /*password=*/password,
                          std::move(analysis_finished_callback),
                          std::move(temp_file_getter_callback), &results_);
 +#else
@@ -68,10 +68,10 @@
  }
  
  void SafeArchiveAnalyzer::AnalyzeSevenZipFile(
-Index: chromium-117.0.5938.22/chrome/services/file_util/safe_archive_analyzer.h
+Index: chromium-118.0.5993.18/chrome/services/file_util/safe_archive_analyzer.h
 ===================================================================
---- 
chromium-117.0.5938.22.orig/chrome/services/file_util/safe_archive_analyzer.h
-+++ chromium-117.0.5938.22/chrome/services/file_util/safe_archive_analyzer.h
+--- 
chromium-118.0.5993.18.orig/chrome/services/file_util/safe_archive_analyzer.h
++++ chromium-118.0.5993.18/chrome/services/file_util/safe_archive_analyzer.h
 @@ -7,7 +7,6 @@
  
  #include "chrome/common/safe_browsing/archive_analyzer_results.h"
@@ -80,7 +80,7 @@
  #include "chrome/utility/safe_browsing/seven_zip_analyzer.h"
  #include "chrome/utility/safe_browsing/zip_analyzer.h"
  #include "mojo/public/cpp/bindings/remote.h"
-@@ -65,7 +64,6 @@ class SafeArchiveAnalyzer : public chrom
+@@ -66,7 +65,6 @@ class SafeArchiveAnalyzer : public chrom
    void Timeout();
  
    safe_browsing::ZipAnalyzer zip_analyzer_;
@@ -88,10 +88,10 @@
    safe_browsing::SevenZipAnalyzer seven_zip_analyzer_;
  #if BUILDFLAG(IS_MAC)
    safe_browsing::dmg::DMGAnalyzer dmg_analyzer_;
-Index: chromium-117.0.5938.22/chrome/utility/safe_browsing/BUILD.gn
+Index: chromium-118.0.5993.18/chrome/utility/safe_browsing/BUILD.gn
 ===================================================================
---- chromium-117.0.5938.22.orig/chrome/utility/safe_browsing/BUILD.gn
-+++ chromium-117.0.5938.22/chrome/utility/safe_browsing/BUILD.gn
+--- chromium-118.0.5993.18.orig/chrome/utility/safe_browsing/BUILD.gn
++++ chromium-118.0.5993.18/chrome/utility/safe_browsing/BUILD.gn
 @@ -31,8 +31,6 @@ source_set("safe_browsing") {
      sources = [
        "archive_analyzer.cc",

Reply via email to