Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package chromium for openSUSE:Factory 
checked in at 2021-08-04 22:28:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/chromium (Old)
 and      /work/SRC/openSUSE:Factory/.chromium.new.1899 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "chromium"

Wed Aug  4 22:28:24 2021 rev:300 rq:909629 version:92.0.4515.107

Changes:
--------
--- /work/SRC/openSUSE:Factory/chromium/chromium.changes        2021-07-21 
19:06:23.491292683 +0200
+++ /work/SRC/openSUSE:Factory/.chromium.new.1899/chromium.changes      
2021-08-04 22:28:52.293802960 +0200
@@ -1,0 +2,41 @@
+Sun Aug  1 11:14:20 UTC 2021 - Callum Farmer <gm...@opensuse.org>
+
+- Chromium 92.0.4515.107 (boo#1188590)
+  * CVE-2021-30565: Out of bounds write in Tab Groups
+  * CVE-2021-30566: Stack buffer overflow in Printing
+  * CVE-2021-30567: Use after free in DevTools
+  * CVE-2021-30568: Heap buffer overflow in WebGL
+  * CVE-2021-30569: Use after free in sqlite
+  * CVE-2021-30571: Insufficient policy enforcement in DevTools
+  * CVE-2021-30572: Use after free in Autofill
+  * CVE-2021-30573: Use after free in GPU
+  * CVE-2021-30574: Use after free in protocol handling
+  * CVE-2021-30575: Out of bounds read in Autofill
+  * CVE-2021-30576: Use after free in DevTools
+  * CVE-2021-30577: Insufficient policy enforcement in Installer
+  * CVE-2021-30578: Uninitialized Use in Media
+  * CVE-2021-30579: Use after free in UI framework
+  * CVE-2021-30581: Use after free in DevTools
+  * CVE-2021-30582: Inappropriate implementation in Animation
+  * CVE-2021-30584: Incorrect security UI in Downloads
+  * CVE-2021-30585: Use after free in sensor handling
+  * CVE-2021-30588: Type Confusion in V8
+  * CVE-2021-30589: Insufficient validation of untrusted input in Sharing
+- Switched from GCC+LTO to Clang+ThinLTO due to errors
+- Removed patches:
+  * chromium-90-compiler.patch
+  * chromium-89-EnumTable-crash.patch
+  * chromium-86-ConsumeDurationNumber-constexpr.patch
+  * chromium-lp152-missing-includes.patch
+  * chromium-91-GCC_fix_vector_types_in_pcscan.patch
+  * chromium-91-system-icu.patch
+  * chromium-91-1190561-boo1186948.patch
+- Added patches:
+  * chromium-91-compiler.patch
+  * chromium-92-EnumTable-crash.patch
+  * chromium-92-v8-constexpr.patch
+  * chromium-92-GetUsableSize-nullptr.patch
+  * chromium-freetype-2.11.patch
+  * chromium-clang-nomerge.patch
+
+-------------------------------------------------------------------

Old:
----
  chromium-86-ConsumeDurationNumber-constexpr.patch
  chromium-89-EnumTable-crash.patch
  chromium-90-compiler.patch
  chromium-91-1190561-boo1186948.patch
  chromium-91-GCC_fix_vector_types_in_pcscan.patch
  chromium-91-system-icu.patch
  chromium-91.0.4472.164.tar.xz
  chromium-lp152-missing-includes.patch

New:
----
  chromium-91-compiler.patch
  chromium-92-EnumTable-crash.patch
  chromium-92-GetUsableSize-nullptr.patch
  chromium-92-v8-constexpr.patch
  chromium-92.0.4515.107.tar.xz
  chromium-clang-nomerge.patch
  chromium-freetype-2.11.patch

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

Other differences:
------------------
++++++ chromium.spec ++++++
--- /var/tmp/diff_new_pack.UG2IAq/_old  2021-08-04 22:29:00.929792426 +0200
+++ /var/tmp/diff_new_pack.UG2IAq/_new  2021-08-04 22:29:00.933792422 +0200
@@ -15,7 +15,15 @@
 # Please submit bugfixes or comments via https://bugs.opensuse.org/
 #
 
-
+%if "%{?suse_version}" >= "1550"
+%define clang_version %{nil}
+%endif
+%if "%{?sle_version}" >= "150300"
+%define clang_version 11
+%endif
+%if "%{?sle_version}" == "150200"
+%define clang_version 9
+%endif
 %define rname chromium
 # bsc#1108175
 %define __provides_exclude ^lib.*\\.so.*$
@@ -38,18 +46,10 @@
 %else
 %bcond_without swiftshader
 %endif
-%ifarch x86_64
-%if %{?suse_version} > 1500
-%bcond_without lto
-%else
 %bcond_with lto
-%endif
-%else
-%bcond_with lto
-%endif
-%bcond_with clang
+%bcond_without clang
 Name:           chromium
-Version:        91.0.4472.164
+Version:        92.0.4515.107
 Release:        0
 Summary:        Google's open source browser project
 License:        BSD-3-Clause AND LGPL-2.1-or-later
@@ -84,27 +84,26 @@
 # gentoo/fedora/arch patchset
 Patch12:        chromium-78-protobuf-RepeatedPtrField-export.patch
 Patch13:        chromium-80-QuicStreamSendBuffer-deleted-move-constructor.patch
-Patch15:        chromium-90-compiler.patch
-Patch16:        chromium-86-ConsumeDurationNumber-constexpr.patch
+Patch15:        chromium-91-compiler.patch
 Patch17:        chromium-86-ImageMemoryBarrierData-init.patch
 Patch18:        chromium-86-nearby-explicit.patch
 Patch19:        chromium-86-nearby-include.patch
 Patch20:        chromium-86-f_seal.patch
 Patch21:        chromium-gcc11.patch
-Patch22:        chromium-lp152-missing-includes.patch
 Patch23:        chromium-glibc-2.33.patch
 Patch25:        chromium-90-fseal.patch
-Patch29:        chromium-89-EnumTable-crash.patch
+Patch29:        chromium-92-EnumTable-crash.patch
 Patch30:        chromium-shim_headers.patch
 Patch31:        chromium-89-missing-cstring-header.patch
 Patch33:        chromium-88-gcc-fix-swiftshader-libEGL-visibility.patch
 Patch36:        chromium-90-ruy-include.patch
 Patch40:        chromium-91-java-only-allowed-in-android-builds.patch
-Patch41:        chromium-91-GCC_fix_vector_types_in_pcscan.patch
-Patch42:        chromium-91-system-icu.patch
 Patch44:        chromium-91-libyuv-aarch64.patch
-Patch45:        chromium-91-1190561-boo1186948.patch
 Patch46:        chromium-91-sql-standard-layout-type.patch
+Patch47:        chromium-92-v8-constexpr.patch
+Patch48:        chromium-92-GetUsableSize-nullptr.patch
+Patch49:        chromium-freetype-2.11.patch
+Patch50:        chromium-clang-nomerge.patch
 # Google seem not too keen on merging this but GPU accel is quite important
 #  https://chromium-review.googlesource.com/c/chromium/src/+/532294
 #  
https://github.com/saiarcot895/chromium-ubuntu-build/tree/master/debian/patches
@@ -115,7 +114,6 @@
 # PATCH-FIX-SUSE: allow prop codecs to be set with chromium branding
 Patch102:       chromium-prop-codecs.patch
 BuildRequires:  SDL-devel
-BuildRequires:  binutils-gold
 BuildRequires:  bison
 BuildRequires:  cups-devel
 BuildRequires:  desktop-file-utils
@@ -181,7 +179,6 @@
 BuildRequires:  pkgconfig(libpci)
 BuildRequires:  pkgconfig(libpulse)
 BuildRequires:  pkgconfig(libssl)
-BuildRequires:  pkgconfig(libtcmalloc)
 BuildRequires:  pkgconfig(libudev)
 BuildRequires:  pkgconfig(libusb-1.0)
 BuildRequires:  pkgconfig(libva)
@@ -231,17 +228,17 @@
 Provides:       chromium-based-browser = %{version}
 Provides:       chromium-browser = %{version}
 Provides:       web_browser
+Provides:       %{name}-suid-helper = %{version}
 Obsoletes:      %{name}-suid-helper < %{version}
 Obsoletes:      chromium-browser < %{version}
-Provides:       %{name}-suid-helper = %{version}
-Obsoletes:      chromium-beta-desktop-gnome
-Obsoletes:      chromium-beta-desktop-kde
-Obsoletes:      chromium-desktop-gnome
-Obsoletes:      chromium-desktop-kde
-Obsoletes:      chromium-dev-desktop-gnome
-Obsoletes:      chromium-dev-desktop-kde
-Obsoletes:      chromium-ffmpeg
-Obsoletes:      chromium-ffmpegsumo
+Obsoletes:      chromium-beta-desktop-gnome < %{version}
+Obsoletes:      chromium-beta-desktop-kde < %{version}
+Obsoletes:      chromium-desktop-gnome < %{version}
+Obsoletes:      chromium-desktop-kde < %{version}
+Obsoletes:      chromium-dev-desktop-gnome < %{version}
+Obsoletes:      chromium-dev-desktop-kde < %{version}
+Obsoletes:      chromium-ffmpeg < %{version}
+Obsoletes:      chromium-ffmpegsumo < %{version}
 # no 32bit supported and it takes ages to build
 ExcludeArch:    %{ix86} %{arm} ppc ppc64 ppc64le s390 s390x
 %if 0%{?suse_version} <= 1500
@@ -261,8 +258,11 @@
 BuildRequires:  pkgconfig(vpx) >= 1.8.2
 %endif
 %if %{with clang}
-BuildRequires:  clang >= 5.0.0
+BuildRequires:  clang%{clang_version}
+BuildRequires:  lld%{clang_version}
+BuildRequires:  llvm%{clang_version}
 %else
+BuildRequires:  binutils-gold
 %if %{?suse_version} > 1500
 BuildRequires:  gcc >= 10
 BuildRequires:  gcc-c++ >= 10
@@ -314,6 +314,7 @@
     buildtools/third_party/libc++
     buildtools/third_party/libc++abi
     buildtools/third_party/libunwind
+    buildtools/third_party/eu-strip
     chrome/third_party/mozilla_security_manager
     courgette/third_party
     net/third_party/mozilla_security_manager
@@ -369,7 +370,7 @@
     third_party/devtools-frontend/src/front_end/third_party/axe-core
     third_party/devtools-frontend/src/front_end/third_party/chromium
     third_party/devtools-frontend/src/front_end/third_party/codemirror
-    third_party/devtools-frontend/src/front_end/third_party/fabricjs
+    third_party/devtools-frontend/src/front_end/third_party/diff
     third_party/devtools-frontend/src/front_end/third_party/i18n
     third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
     third_party/devtools-frontend/src/front_end/third_party/lighthouse
@@ -441,7 +442,6 @@
     third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
     third_party/one_euro_filter
     third_party/opencv
-    third_party/openh264
     third_party/openscreen
     third_party/openscreen/src/third_party/mozilla
     third_party/openscreen/src/third_party/tinycbor/src/src
@@ -487,7 +487,6 @@
     third_party/swiftshader/third_party/marl
     third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
     third_party/swiftshader/third_party/subzero
-    third_party/tcmalloc
     third_party/tensorflow-text
     third_party/tflite
     third_party/tflite/src/third_party/eigen3
@@ -552,12 +551,29 @@
 %if %{with clang}
 export CC=clang
 export CXX=clang++
+export AR=llvm-ar
+export NM=llvm-nm
 %else
+export AR=ar
+export NM=nm
+%if 0%{?suse_version} <= 1500
+mkdir -p "$HOME/bin/"
+export CC=gcc-10
+export CXX=g++-10
+# some still call gcc/g++
+ln -sfn %{_bindir}/$CC $HOME/bin/gcc
+ln -sfn %{_bindir}/$CXX $HOME/bin/g++
+export PATH="$HOME/bin/:$PATH"
+%else
+export CC=gcc
+export CXX=g++
+%endif
+%endif
 # REDUCE DEBUG as it gets TOO large
 ARCH_FLAGS="`echo %{optflags} | sed -e 's/^-g / /g' -e 's/ -g / /g' -e 's/ 
-g$//g'`"
 export CXXFLAGS="${ARCH_FLAGS} -Wno-return-type"
 # extra flags to reduce warnings that aren't very useful
-export CXXFLAGS="${CXXFLAGS} -Wno-pedantic -Wno-unused-result 
-Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable 
-Wno-deprecated-declarations"
+export CXXFLAGS="${CXXFLAGS} -Wno-pedantic -Wno-unused-result 
-Wno-unused-function -Wno-unused-variable -Wno-deprecated-declarations"
 # ignore warnings for minor mistakes that are too common
 export CXXFLAGS="${CXXFLAGS} -Wno-return-type -Wno-parentheses 
-Wno-misleading-indentation"
 # ignore warnings that are not supported well until gcc 8
@@ -565,31 +581,31 @@
 # ignore warnings due to gcc bug 
(https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84055)
 export CXXFLAGS="${CXXFLAGS} -Wno-ignored-attributes"
 # ingore new gcc 8 warnings that aren't yet handled upstream
-export CXXFLAGS="${CXXFLAGS} -Wno-address -Wno-dangling-else 
-Wno-packed-not-aligned"
+export CXXFLAGS="${CXXFLAGS} -Wno-address -Wno-dangling-else"
 # for wayland
 export CXXFLAGS="${CXXFLAGS} -I/usr/include/wayland 
-I/usr/include/libxkbcommon"
 %ifarch aarch64
+%if %{without clang}
 export CXXFLAGS="${CXXFLAGS} -flax-vector-conversions"
+%else
+%if "%{?sle_version}" == "150200"
+export CXXFLAGS="${CXXFLAGS} -flax-vector-conversions"
+%else
+export CXXFLAGS="${CXXFLAGS} -flax-vector-conversions=all"
+%endif
 %endif
-export CFLAGS="${CXXFLAGS}"
-export CXXFLAGS="${CXXFLAGS} -Wno-subobject-linkage -Wno-class-memaccess 
-Wno-invalid-offsetof -fpermissive"
-export CC=gcc
-export CXX=g++
-export AR=ar
-export NM=nm
-%if 0%{?suse_version} <= 1500
-mkdir -p "$HOME/bin/"
-export CC=gcc-10
-export CXX=g++-10
-# some still call gcc/g++
-ln -sfn %{_bindir}/$CC $HOME/bin/gcc
-ln -sfn %{_bindir}/$CXX $HOME/bin/g++
-export PATH="$HOME/bin/:$PATH"
 %endif
+%if %{without clang}
+export CXXFLAGS="${CXXFLAGS} -Wno-unused-but-set-variable 
-Wno-packed-not-aligned"
+%endif
+export CFLAGS="${CXXFLAGS}"
+%if %{without clang}
+export CXXFLAGS="${CXXFLAGS} -Wno-subobject-linkage -Wno-class-memaccess"
 %endif
+export CXXFLAGS="${CXXFLAGS} -Wno-invalid-offsetof -fpermissive"
 # do not eat all memory
 %limit_build -m 2600
-%if %{with lto}
+%if %{with lto} && %{without clang}
 # reduce the threads for linking even more due to LTO eating ton of memory
 _link_threads=$(((%{jobs} - 2)))
 test "$_link_threads" -le 0 && _link_threads=1
@@ -634,6 +650,10 @@
 myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
 myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
 myconf_gn+=" use_custom_libcxx=false"
+%ifarch x86_64
+myconf_gn+=" target_cpu=\"x64\""
+%endif
+myconf_gn+=" target_os=\"linux\""
 myconf_gn+=" is_debug=false"
 myconf_gn+=" enable_nacl=false"
 %if %{with swiftshader}
@@ -642,7 +662,6 @@
 myconf_gn+=" is_component_ffmpeg=true"
 myconf_gn+=" use_cups=true"
 myconf_gn+=" use_aura=true"
-myconf_gn+=" concurrent_links=1"
 myconf_gn+=" symbol_level=1"
 myconf_gn+=" blink_symbol_level=0"
 myconf_gn+=" use_kerberos=true"
@@ -653,18 +672,19 @@
 myconf_gn+=" is_component_build=false"
 myconf_gn+=" use_sysroot=false"
 myconf_gn+=" fatal_linker_warnings=false"
-# Current tcmalloc does not support AArch64
-myconf_gn+=" use_allocator=\"tcmalloc\""
+myconf_gn+=" use_allocator=\"partition\""
+myconf_gn+=" use_allocator_shim=true"
+myconf_gn+=" use_partition_alloc=true"
 myconf_gn+=" fieldtrial_testing_like_official_build=true"
-myconf_gn+=" use_gold=true"
 myconf_gn+=" use_gnome_keyring=false"
 myconf_gn+=" use_unofficial_version_number=false"
-myconf_gn+=" use_lld=false"
 myconf_gn+=" use_vaapi=true"
 myconf_gn+=" use_sysroot=false"
 myconf_gn+=" treat_warnings_as_errors=false"
 myconf_gn+=" enable_widevine=true"
 myconf_gn+=" use_dbus=true"
+myconf_gn+=" media_use_openh264=false"
+myconf_gn+=" rtc_use_h264=false"
 # See dependency logic in third_party/BUILD.gn
 %if %{with system_harfbuzz}
 myconf_gn+=" use_system_harfbuzz=true"
@@ -678,8 +698,13 @@
 %endif
 %if %{with clang}
 myconf_gn+=" is_clang=true clang_base_path=\"/usr\" 
clang_use_chrome_plugins=false"
+%if "%{?suse_version}" >= "1550" || "%{?sle_version}" >= "150300"
+myconf_gn+=" use_thin_lto=true"
+%endif
+myconf_gn+=" use_lld=true"
 %else
 myconf_gn+=" is_clang=false"
+myconf_gn+=" use_gold=true"
 %endif
 %if %{with lto}
 myconf_gn+=" gcc_lto=true"
@@ -796,7 +821,7 @@
 # link to browser plugin path.  Plugin patch doesn't work. Why?
 mkdir -p %{buildroot}%{_libdir}/browser-plugins
 pushd %{buildroot}%{_libdir}/chromium
-ln -s ../browser-plugins plugins
+ln -s %{_libdir}/browser-plugins %{buildroot}%{_libdir}/chromium/plugins
 popd
 
 # Install the master_preferences file
@@ -809,7 +834,7 @@
 sed -i "s|@@PACKAGE@@|chromium|g" %{buildroot}%{_mandir}/man1/chromium.1
 sed -i "s|@@MENUNAME@@|Chromium|g" %{buildroot}%{_mandir}/man1/chromium.1
 
-%fdupes %{buildroot}
+%fdupes -s %{buildroot}
 
 %files
 %license LICENSE
@@ -818,17 +843,11 @@
 %config(noreplace) %{_sysconfdir}/default/chromium
 %dir %{_datadir}/gnome-control-center
 %dir %{_datadir}/gnome-control-center/default-apps
-%{_libdir}/chromium/
-%if %{with swiftshader}
-%dir %{_libdir}/chromium/swiftshader/
-%{_libdir}/chromium/swiftshader/*.so
-%endif
-%{_libdir}/chromium/*.so
+%{_datadir}/gnome-control-center/default-apps/chromium-browser.xml
+%{_libdir}/chromium
 %{_datadir}/applications/*.desktop
-%dir %{_datadir}/metainfo/
 %{_datadir}/metainfo/chromium-browser.appdata.xml
-%{_datadir}/gnome-control-center/default-apps/chromium-browser.xml
-%{_datadir}/icons/hicolor/
+%{_datadir}/icons/hicolor
 %exclude %{_libdir}/chromium/chromedriver
 %{_bindir}/chromium
 %{_mandir}/man1/chromium.1%{?ext_man}

++++++ chromium-86-ImageMemoryBarrierData-init.patch ++++++
--- /var/tmp/diff_new_pack.UG2IAq/_old  2021-08-04 22:29:00.973792372 +0200
+++ /var/tmp/diff_new_pack.UG2IAq/_new  2021-08-04 22:29:00.973792372 +0200
@@ -21,7 +21,7 @@
  
  struct ImageMemoryBarrierData
  {
--    char name[40];
+-    char name[44];
 +    const char *name;
  
      // The Vk layout corresponding to the ImageLayout key.

++++++ chromium-90-compiler.patch -> chromium-91-compiler.patch ++++++
--- /work/SRC/openSUSE:Factory/chromium/chromium-90-compiler.patch      
2021-05-10 15:39:19.161579142 +0200
+++ /work/SRC/openSUSE:Factory/.chromium.new.1899/chromium-91-compiler.patch    
2021-08-04 22:28:36.629822187 +0200
@@ -1,6 +1,6 @@
 From f4d0b0eb899005b4b8b6388e1d8bb82cc0018fc8 Mon Sep 17 00:00:00 2001
 From: Mike Gilbert <flop...@gentoo.org>
-Date: Tue, 13 Apr 2021 07:59:41 +0000
+Date: Wed, 7 Apr 2021 08:50:04 +0000
 Subject: [PATCH] Disable various compiler configs
 
 ---
@@ -8,10 +8,10 @@
  1 file changed, 17 insertions(+), 42 deletions(-)
 
 diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 2166af0..90ad0c1 100644
+index 72ea590..539672d 100644
 --- a/build/config/compiler/BUILD.gn
 +++ b/build/config/compiler/BUILD.gn
-@@ -267,8 +267,6 @@ config("compiler") {
+@@ -273,8 +273,6 @@ config("compiler") {
  
    configs += [
      # See the definitions below.
@@ -20,7 +20,7 @@
      ":compiler_codegen",
      ":compiler_deterministic",
    ]
-@@ -509,24 +507,6 @@ config("compiler") {
+@@ -518,24 +516,6 @@ config("compiler") {
      ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
    }
  
@@ -45,7 +45,7 @@
    # C11/C++11 compiler flags setup.
    # ---------------------------
    if (is_linux || is_chromeos || is_android || (is_nacl && is_clang) ||
-@@ -1640,7 +1620,7 @@ config("chromium_code") {
+@@ -1643,7 +1623,7 @@ config("chromium_code") {
        defines = [ "_HAS_NODISCARD" ]
      }
    } else {
@@ -54,7 +54,7 @@
      if (treat_warnings_as_errors) {
        cflags += [ "-Werror" ]
  
-@@ -1649,10 +1629,6 @@ config("chromium_code") {
+@@ -1652,10 +1632,6 @@ config("chromium_code") {
        # well.
        ldflags = [ "-Werror" ]
      }
@@ -65,7 +65,7 @@
  
      # In Chromium code, we define __STDC_foo_MACROS in order to get the
      # C99 macros on Mac and Linux.
-@@ -1661,15 +1637,6 @@ config("chromium_code") {
+@@ -1664,15 +1640,6 @@ config("chromium_code") {
        "__STDC_FORMAT_MACROS",
      ]
  
@@ -81,7 +81,7 @@
      if (is_mac) {
        cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
        cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -2069,7 +2036,8 @@ config("default_stack_frames") {
+@@ -2068,7 +2035,8 @@ config("default_stack_frames") {
  }
  
  # Default "optimization on" config.
@@ -91,7 +91,7 @@
    if (is_win) {
      if (chrome_pgo_phase != 2) {
        # Favor size over speed, /O1 must be before the common flags.
-@@ -2104,7 +2072,8 @@ config("optimize") {
+@@ -2103,7 +2071,8 @@ config("optimize") {
  }
  
  # Turn off optimizations.
@@ -101,7 +101,7 @@
    if (is_win) {
      cflags = [
        "/Od",  # Disable optimization.
-@@ -2144,7 +2113,8 @@ config("no_optimize") {
+@@ -2143,7 +2112,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.
@@ -111,7 +111,7 @@
    if (is_nacl && is_nacl_irt) {
      # The NaCl IRT is a special case and always wants its own config.
      # Various components do:
-@@ -2176,7 +2146,8 @@ config("optimize_max") {
+@@ -2175,7 +2145,8 @@ config("optimize_max") {
  #
  # TODO(crbug.com/621335) - rework how all of these configs are related
  # so that we don't need this disclaimer.
@@ -121,7 +121,7 @@
    if (is_nacl && is_nacl_irt) {
      # The NaCl IRT is a special case and always wants its own config.
      # Various components do:
-@@ -2201,7 +2172,8 @@ config("optimize_speed") {
+@@ -2200,7 +2171,8 @@ config("optimize_speed") {
    }
  }
  
@@ -131,7 +131,7 @@
    cflags = [ "-O1" ] + common_optimize_on_cflags
    ldflags = common_optimize_on_ldflags
    visibility = [ ":default_optimization" ]
-@@ -2320,7 +2292,8 @@ config("win_pdbaltpath") {
+@@ -2319,7 +2291,8 @@ config("win_pdbaltpath") {
  }
  
  # Full symbols.
@@ -141,7 +141,7 @@
    if (is_win) {
      if (is_clang) {
        cflags = [ "/Z7" ]  # Debug information in the .obj files.
-@@ -2423,7 +2396,8 @@ config("symbols") {
+@@ -2422,7 +2395,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.
@@ -151,7 +151,7 @@
    if (is_win) {
      # Functions, files, and line tables only.
      cflags = []
-@@ -2482,7 +2456,8 @@ config("minimal_symbols") {
+@@ -2481,7 +2455,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-89-EnumTable-crash.patch -> chromium-92-EnumTable-crash.patch 
++++++
--- /work/SRC/openSUSE:Factory/chromium/chromium-89-EnumTable-crash.patch       
2021-03-10 08:49:53.998433458 +0100
+++ 
/work/SRC/openSUSE:Factory/.chromium.new.1899/chromium-92-EnumTable-crash.patch 
    2021-08-04 22:28:36.637822177 +0200
@@ -30,7 +30,7 @@
          if (ANALYZER_ASSUME_TRUE(entry.has_str()))
            return entry.str();
        }
-       return base::nullopt;
+       return absl::nullopt;
      }
      return GenericEnumTableEntry::FindByValue(
 -        reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
@@ -41,12 +41,12 @@
    // This overload of GetString is designed for cases where the argument is a
 @@ -342,8 +340,7 @@ class EnumTable {
    // enum value directly.
-   base::Optional<E> GetEnum(base::StringPiece str) const {
+   absl::optional<E> GetEnum(base::StringPiece str) const {
      auto* entry = GenericEnumTableEntry::FindByString(
 -        reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
 -        data_.size(), str);
 +        &data_[0], data_.size(), str);
-     return entry ? static_cast<E>(entry->value) : base::Optional<E>();
+     return entry ? static_cast<E>(entry->value) : absl::optional<E>();
    }
  
 @@ -358,7 +355,7 @@ class EnumTable {

++++++ chromium-92-GetUsableSize-nullptr.patch ++++++
>From 61e16c92ff24bb71b9b7309a9d6d470ee91738bc Mon Sep 17 00:00:00 2001
From: Bartek Nowierski <bart...@chromium.org>
Date: Wed, 21 Jul 2021 15:01:38 +0000
Subject: [PATCH] [PA] Make GetUsableSize() handle nullptr gracefully

malloc_usable_size() is expected to not crush on NULL and return 0.

Bug: 1221442
Change-Id: I6a3b90dcf3a8ad18114c206d87b98f60d5f50eb1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3042177
Commit-Queue: Bartek Nowierski <bart...@chromium.org>
Commit-Queue: Kentaro Hara <hara...@chromium.org>
Auto-Submit: Bartek Nowierski <bart...@chromium.org>
Reviewed-by: Kentaro Hara <hara...@chromium.org>
Cr-Commit-Position: refs/heads/master@{#903900}
---

diff --git a/base/allocator/partition_allocator/partition_alloc_unittest.cc 
b/base/allocator/partition_allocator/partition_alloc_unittest.cc
index c1212011..8863984 100644
--- a/base/allocator/partition_allocator/partition_alloc_unittest.cc
+++ b/base/allocator/partition_allocator/partition_alloc_unittest.cc
@@ -2838,6 +2838,10 @@
   }
 }
 
+TEST_F(PartitionAllocTest, GetUsableSizeNull) {
+  EXPECT_EQ(0ULL, PartitionRoot<ThreadSafe>::GetUsableSize(nullptr));
+}
+
 TEST_F(PartitionAllocTest, GetUsableSize) {
   size_t delta = SystemPageSize() + 1;
   for (size_t size = 1; size <= kMinDirectMappedDownsize; size += delta) {
diff --git a/base/allocator/partition_allocator/partition_root.h 
b/base/allocator/partition_allocator/partition_root.h
index b72a1d9..baac9525 100644
--- a/base/allocator/partition_allocator/partition_root.h
+++ b/base/allocator/partition_allocator/partition_root.h
@@ -1220,6 +1220,9 @@
 // PartitionAlloc's internal data. Used as malloc_usable_size.
 template <bool thread_safe>
 ALWAYS_INLINE size_t PartitionRoot<thread_safe>::GetUsableSize(void* ptr) {
+  // malloc_usable_size() is expected to handle NULL gracefully and return 0.
+  if (!ptr)
+    return 0;
   auto* slot_span = SlotSpan::FromSlotInnerPtr(ptr);
   auto* root = FromSlotSpan(slot_span);
   return slot_span->GetUsableSize(root);
++++++ chromium-92-v8-constexpr.patch ++++++
GCC: make VRegister::from_code() constexpr on aarch64

LiftoffRegister::gp() and LiftoffRegister::fp() are constexpr.
Therefore, VRegister::from_code() needs to be constexpr as well.
diff --git a/v8/src/codegen/arm64/register-arm64.h 
b/v8/src/codegen/arm64/register-arm64.h
index 1150daf..21007a5 100644
--- a/v8/src/codegen/arm64/register-arm64.h
+++ b/v8/src/codegen/arm64/register-arm64.h
@@ -413,7 +413,7 @@ class VRegister : public CPURegister {
   static constexpr int kMaxNumRegisters = kNumberOfVRegisters;
   STATIC_ASSERT(kMaxNumRegisters == kDoubleAfterLast);
 
-  static VRegister from_code(int code) {
+  static constexpr VRegister from_code(int code) {
     // Always return a D register.
     return VRegister::Create(code, kDRegSizeInBits);
   }
++++++ chromium-91.0.4472.164.tar.xz -> chromium-92.0.4515.107.tar.xz ++++++
/work/SRC/openSUSE:Factory/chromium/chromium-91.0.4472.164.tar.xz 
/work/SRC/openSUSE:Factory/.chromium.new.1899/chromium-92.0.4515.107.tar.xz 
differ: char 26, line 1

++++++ chromium-clang-nomerge.patch ++++++
Upstream-status: Inapproriate

Upstream suggests to use Chromium's hermetic clang
instead.

Signed-off-by: Maksim Sisov <msi...@igalia.com>
---
>From bde3186ccba169391fb428fcc296b2236ada0010 Mon Sep 17 00:00:00 2001
From: Maksim Sisov <msi...@igalia.com>
Date: Wed, 5 May 2021 15:20:43 +0300
Subject: [PATCH] nomerge attribute on declaration is only available since
 clang 12

This change fixes builds with older clangs that do not allow
nomerge attributes on declaration. Otherwise, the following error
is produced -

build error: 'nomerge' attribute cannot be applied to a declaration

See https://reviews.llvm.org/D92800

Change-Id: I32e1f7dc9049737d54d8a16de5308aa5aae1ced1
---
 base/compiler_specific.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/base/compiler_specific.h b/base/compiler_specific.h
index 6693e9ea33e9..d3b425abe9ca 100644
--- a/base/compiler_specific.h
+++ b/base/compiler_specific.h
@@ -340,7 +340,8 @@ inline constexpr bool AnalyzerAssumeTrue(bool arg) {
 #endif  // defined(__clang_analyzer__)
 
 // Use nomerge attribute to disable optimization of merging multiple same 
calls.
-#if defined(__clang__) && __has_attribute(nomerge)
+#if defined(__clang__) && (__clang_major__ >= 12) && \
+    __has_attribute(nomerge) && !defined(OS_CHROMEOS)
 #define NOMERGE [[clang::nomerge]]
 #else
 #define NOMERGE
-- 
2.25.1

++++++ chromium-freetype-2.11.patch ++++++
--- a/third_party/skia/src/ports/SkFontHost_FreeType_common.cpp
+++ b/third_party/skia/src/ports/SkFontHost_FreeType_common.cpp
@@ -712,7 +712,11 @@ void colrv1_draw_paint(SkCanvas* canvas,
             canvas->drawPaint(colrPaint);
             break;
         }
+#if FREETYPE_MAJOR == 2 && FREETYPE_MINOR >= 11
+        case FT_COLR_PAINTFORMAT_TRANSFORM:
+#else
         case FT_COLR_PAINTFORMAT_TRANSFORMED:
+#endif
         case FT_COLR_PAINTFORMAT_TRANSLATE:
         case FT_COLR_PAINTFORMAT_ROTATE:
         case FT_COLR_PAINTFORMAT_SKEW:
@@ -759,10 +763,17 @@ void colrv1_transform(SkCanvas* canvas, FT_Face face, 
FT_COLR_Paint colrv1_paint
     SkMatrix transform;
 
     switch (colrv1_paint.format) {
+#if FREETYPE_MAJOR == 2 && FREETYPE_MINOR >= 11
+        case FT_COLR_PAINTFORMAT_TRANSFORM: {
+            transform = ToSkMatrix(colrv1_paint.u.transform.affine);
+            break;
+        }
+#else
         case FT_COLR_PAINTFORMAT_TRANSFORMED: {
             transform = ToSkMatrix(colrv1_paint.u.transformed.affine);
             break;
         }
+#endif
         case FT_COLR_PAINTFORMAT_TRANSLATE: {
             transform = SkMatrix::Translate(
                 SkFixedToScalar(colrv1_paint.u.translate.dx),
@@ -880,10 +891,17 @@ bool colrv1_traverse_paint(SkCanvas* canvas,
             traverse_result = colrv1_start_glyph(canvas, palette, face, 
paint.u.colr_glyph.glyphID,
                                                  FT_COLOR_NO_ROOT_TRANSFORM);
             break;
+#if FREETYPE_MAJOR == 2 && FREETYPE_MINOR >= 11
+        case FT_COLR_PAINTFORMAT_TRANSFORM:
+            colrv1_transform(canvas, face, paint);
+            traverse_result = colrv1_traverse_paint(canvas, palette, face,
+                                                    paint.u.transform.paint, 
visited_set);
+#else
         case FT_COLR_PAINTFORMAT_TRANSFORMED:
             colrv1_transform(canvas, face, paint);
             traverse_result = colrv1_traverse_paint(canvas, palette, face,
                                                     paint.u.transformed.paint, 
visited_set);
+#endif
             break;
         case FT_COLR_PAINTFORMAT_TRANSLATE:
             colrv1_transform(canvas, face, paint);
++++++ chromium-norar.patch ++++++
--- /var/tmp/diff_new_pack.UG2IAq/_old  2021-08-04 22:29:01.105792212 +0200
+++ /var/tmp/diff_new_pack.UG2IAq/_new  2021-08-04 22:29:01.105792212 +0200
@@ -84,10 +84,10 @@
 --- chromium-86.0.4240.75.orig/chrome/services/file_util/BUILD.gn
 +++ chromium-86.0.4240.75/chrome/services/file_util/BUILD.gn
 @@ -15,7 +15,6 @@ source_set("file_util") {
-     "//build:chromeos_buildflags",
-     "//chrome/common/safe_browsing",
-     "//chrome/common/safe_browsing:archive_analyzer_results",
--    "//chrome/common/safe_browsing:rar_analyzer",
-     "//components/safe_browsing:buildflags",
-     "//mojo/public/cpp/bindings",
-   ]
+     deps += [
+       "//chrome/common/safe_browsing",
+       "//chrome/common/safe_browsing:archive_analyzer_results",
+-      "//chrome/common/safe_browsing:rar_analyzer",
+     ]
+   }
+ 

++++++ chromium-prop-codecs.patch ++++++
--- /var/tmp/diff_new_pack.UG2IAq/_old  2021-08-04 22:29:01.113792202 +0200
+++ /var/tmp/diff_new_pack.UG2IAq/_new  2021-08-04 22:29:01.113792202 +0200
@@ -15,17 +15,3 @@
  # Common configuration for targets in the media directory; these must not be
  # exported since things like USE_NEON and USE_CRAS have different meanings
  # elsewhere in the code base.
-Index: chromium-85.0.4183.69/third_party/webrtc/webrtc.gni
-===================================================================
---- chromium-85.0.4183.69.orig/third_party/webrtc/webrtc.gni
-+++ chromium-85.0.4183.69/third_party/webrtc/webrtc.gni
-@@ -156,8 +156,7 @@ declare_args() {
-   #
-   # Enabling H264 when building with MSVC is currently not supported, see
-   # bugs.webrtc.org/9213#c13 for more info.
--  rtc_use_h264 =
--      proprietary_codecs && !is_android && !is_ios && !(is_win && !is_clang)
-+  rtc_use_h264 = false
- 
-   # Enable this flag to make webrtc::Mutex be implemented by absl::Mutex.
-   rtc_use_absl_mutex = false

Reply via email to