Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package nodejs-electron for openSUSE:Factory 
checked in at 2022-01-27 23:16:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/nodejs-electron (Old)
 and      /work/SRC/openSUSE:Factory/.nodejs-electron.new.1898 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "nodejs-electron"

Thu Jan 27 23:16:50 2022 rev:15 rq:949339 version:16.0.7

Changes:
--------
--- /work/SRC/openSUSE:Factory/nodejs-electron/nodejs-electron.changes  
2021-12-16 02:00:51.831630355 +0100
+++ 
/work/SRC/openSUSE:Factory/.nodejs-electron.new.1898/nodejs-electron.changes    
    2022-01-27 23:17:48.014632723 +0100
@@ -1,0 +2,39 @@
+Wed Jan 19 18:09:33 UTC 2022 - Andreas Schneider <[email protected]>
+
+- Package pgo profiles
+
+-------------------------------------------------------------------
+Tue Jan 18 08:58:39 UTC 2022 - Andreas Schneider <[email protected]>
+
+- Update to version 16.0.7
+  * https://github.com/electron/electron/releases/tag/v16.0.7
+- Removed chromium-93-blink.patch
+- Removed harfbuzz_roll.patch
+- Removed skia_harfbuzz_api.patch
+- Removed skia_harfbuzz_roll.patch
+- Added chromium-96-CommandLine-include.patch
+- Added chromium-96-CouponDB-include.patch
+- Added chromium-96-DrmRenderNodePathFinder-include.patch
+- Added chromium-96-RestrictedCookieManager-tuple.patch
+- Added electron-16-std-vector-non-const.patch
+
+-------------------------------------------------------------------
+Fri Dec 17 14:17:26 UTC 2021 - Andreas Schneider <[email protected]>
+
+- Update to version 15.3.3
+  * https://github.com/electron/electron/releases/tag/v15.3.3
+- Added chromium-93-blink.patch
+- Added chromium-93-ffmpeg-4.4.patch
+- Added chromium-94-ffmpeg-roll.patch
+- Added chromium-95-compiler.patch
+- Removed a9831f1cbf93fb18dd951453635f488037454ce9.patch
+- Removed chromium-88-gcc-fix-swiftshader-libEGL-visibility.patch
+- Removed chromium-91-GCC_fix_vector_types_in_pcscan.patch
+- Removed chromium-91-compiler.patch
+- Removed chromium-91-system-icu.patch
+- Removed chromium-freetype-2.11.patch
+- Removed chromium-glibc-2.33.patch
+- Removed chromium-lp152-missing-includes.patch
+- Removed electron-13-gcc-fix-v8-nodiscard.patch
+
+-------------------------------------------------------------------

Old:
----
  a9831f1cbf93fb18dd951453635f488037454ce9.patch
  chromium-88-gcc-fix-swiftshader-libEGL-visibility.patch
  chromium-91-GCC_fix_vector_types_in_pcscan.patch
  chromium-91-compiler.patch
  chromium-91-system-icu.patch
  chromium-freetype-2.11.patch
  chromium-glibc-2.33.patch
  chromium-lp152-missing-includes.patch
  electron-13-gcc-fix-v8-nodiscard.patch
  electron-13.6.3.tar.xz
  harfbuzz_roll.patch
  skia_harfbuzz_api.patch
  skia_harfbuzz_roll.patch

New:
----
  chromium-93-ffmpeg-4.4.patch
  chromium-94-ffmpeg-roll.patch
  chromium-95-compiler.patch
  chromium-96-CommandLine-include.patch
  chromium-96-CouponDB-include.patch
  chromium-96-DrmRenderNodePathFinder-include.patch
  chromium-96-RestrictedCookieManager-tuple.patch
  electron-16-std-vector-non-const.patch
  electron-16.0.7.tar.xz

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

Other differences:
------------------
++++++ nodejs-electron.spec ++++++
--- /var/tmp/diff_new_pack.hODLA7/_old  2022-01-27 23:18:23.122390172 +0100
+++ /var/tmp/diff_new_pack.hODLA7/_new  2022-01-27 23:18:23.126390144 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package nodejs-electron
 #
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -20,7 +20,9 @@
 ExcludeArch:    %{ix86} %{arm}
 %ifarch x86_64
 %if 0%{?suse_version} > 1500 || 0%{?fedora_version}
-%bcond_without lto
+# DISABLE LTO AS IT IS BROKEN RIGHT NOW
+#%%bcond_without lto
+%bcond_with lto
 # else suse_version
 %else
 %bcond_with lto
@@ -54,7 +56,7 @@
 %bcond_with clang
 %endif
 Name:           nodejs-electron
-Version:        13.6.3
+Version:        16.0.7
 Release:        0
 Summary:        Build cross platform desktop apps with JavaScript, HTML, and 
CSS
 License:        MIT
@@ -65,26 +67,26 @@
 Source10:       electron-launcher.sh
 Source11:       electron.desktop
 Source12:       electron-logo-symbolic.svg
-Patch0:         chromium-91-compiler.patch
+Patch0:         chromium-95-compiler.patch
 %if 0%{?sle_version} < 150300 || 0%{?fedora_version} < 34
 # Fixed with ld.gold >= 2.36
 # https://sourceware.org/bugzilla/show_bug.cgi?id=26200
 Patch1:         chromium-disable-parallel-gold.patch
 %endif
-Patch2:         chromium-glibc-2.33.patch
-Patch3:         chromium-lp152-missing-includes.patch
-Patch4:         chromium-norar.patch
-Patch5:         chromium-system-libusb.patch
-Patch6:         gcc-enable-lto.patch
+Patch2:         chromium-system-libusb.patch
+Patch3:         gcc-enable-lto.patch
+Patch4:         chromium-gcc11.patch
+Patch5:         chromium-norar.patch
+Patch6:         chromium-vaapi.patch
 Patch7:         chromium-91-java-only-allowed-in-android-builds.patch
-Patch8:         chromium-91-system-icu.patch
-Patch9:         chromium-glibc-2.34.patch
-Patch10:        chromium-88-gcc-fix-swiftshader-libEGL-visibility.patch
-Patch11:        chromium-vaapi.patch
-Patch12:        chromium-86-fix-vaapi-on-intel.patch
-Patch13:        chromium-91-GCC_fix_vector_types_in_pcscan.patch
-Patch14:        chromium-gcc11.patch
-Patch15:        chromium-freetype-2.11.patch
+Patch8:         chromium-glibc-2.34.patch
+Patch9:         chromium-86-fix-vaapi-on-intel.patch
+Patch10:        chromium-93-ffmpeg-4.4.patch
+Patch11:        chromium-94-ffmpeg-roll.patch
+Patch12:        chromium-96-RestrictedCookieManager-tuple.patch
+Patch13:        chromium-96-CouponDB-include.patch
+Patch14:        chromium-96-DrmRenderNodePathFinder-include.patch
+Patch15:        chromium-96-CommandLine-include.patch
 # Fix building sql recover_module
 Patch20:        electron-13-fix-sql-virtualcursor-type.patch
 # Always disable use_thin_lto which is an lld feature
@@ -95,17 +97,10 @@
 #     'nomerge' attribute cannot be applied to a declaration
 # See https://reviews.llvm.org/D92800
 Patch22:        electron-13-fix-base-check-nomerge.patch
-# Mark [nodiscard] as unsupported
-Patch23:        electron-13-gcc-fix-v8-nodiscard.patch
 # Fix blink nodestructor
-Patch24:        electron-13-blink-gcc-ambiguous-nodestructor.patch
-Patch26:        a9831f1cbf93fb18dd951453635f488037454ce9.patch
-%if 0%{?suse_version} > 1500
-# Fix missing harfbuzz symbols for harfbuzz 3.0.0
-Patch27:        skia_harfbuzz_roll.patch
-Patch28:        skia_harfbuzz_api.patch
-Patch29:        harfbuzz_roll.patch
-%endif
+Patch23:        electron-13-blink-gcc-ambiguous-nodestructor.patch
+# Fix electron patched code
+Patch24:        electron-16-std-vector-non-const.patch
 BuildRequires:  SDL-devel
 BuildRequires:  binutils-gold
 BuildRequires:  bison
@@ -133,6 +128,7 @@
 %if 0%{?suse_version}
 # Required for /usr/bin/clang-format
 BuildRequires:  clang >= 8.0.0
+BuildRequires:  lld >= 8.0.0
 BuildRequires:  ninja >= 1.7.2
 %endif
 %if 0%{?fedora_version}
@@ -141,17 +137,13 @@
 BuildRequires:  libatomic
 BuildRequires:  ninja-build >= 1.7.2
 %endif
-BuildRequires:  nodejs >= 8.0
+BuildRequires:  nodejs >= 16.5.0
 BuildRequires:  npm
 BuildRequires:  pam-devel
 BuildRequires:  pkgconfig
-%if 0%{?fedora_version}
-BuildRequires:  python2-devel
-%endif
-%if 0%{?suse_version}
-BuildRequires:  python2
-BuildRequires:  python2-xml
-%endif
+BuildRequires:  python3
+BuildRequires:  python3-setuptools
+BuildRequires:  python3-six
 BuildRequires:  rsync
 BuildRequires:  snappy-devel
 %if 0%{?suse_version}
@@ -300,6 +292,10 @@
 mkdir -p third_party/node/linux/node-linux-x64/bin
 ln -sf %{_bindir}/node third_party/node/linux/node-linux-x64/bin/node
 
+# Fix eu-strip
+rm buildtools/third_party/eu-strip/bin/eu-strip
+ln -s %{_bindir}/eu-strip buildtools/third_party/eu-strip/bin/eu-strip
+
 # Fix shim header generation
 sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
       tools/generate_shim_headers/generate_shim_headers.py
@@ -312,10 +308,10 @@
 # GN sets lto on its own and we need just ldflag options, not cflags
 %define _lto_cflags %{nil}
 
-# Make sure python is python2
-install -d -m 0755 python2-path
-ln -sf %{_bindir}/python2 "$(pwd)/python2-path/python"
-export PATH="$(pwd)/python2-path:${PATH}"
+# Make sure python is python3
+install -d -m 0755 python3-path
+ln -sf %{_bindir}/python3 "$(pwd)/python3-path/python"
+export PATH="$(pwd)/python3-path:${PATH}"
 
 # for wayland
 export CXXFLAGS="${CXXFLAGS} -I/usr/include/wayland 
-I/usr/include/libxkbcommon"
@@ -409,7 +405,15 @@
 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+=" host_cpu=\"x64\""
+%endif
+%ifarch aarch64
+myconf_gn+=" host_cpu=\"arm64\""
+%endif
+myconf_gn+=" host_os=\"linux\""
 myconf_gn+=" is_debug=false"
+myconf_gn+=" dcheck_always_on=false"
 myconf_gn+=" enable_nacl=false"
 %if %{with swiftshader}
 myconf_gn+=" use_swiftshader_with_subzero=true"
@@ -417,8 +421,6 @@
 myconf_gn+=" is_component_ffmpeg=true"
 myconf_gn+=" use_cups=true"
 myconf_gn+=" use_aura=true"
-myconf_gn+=" chrome_pgo_phase=0"
-myconf_gn+=" concurrent_links=1"
 myconf_gn+=" symbol_level=1"
 myconf_gn+=" blink_symbol_level=0"
 myconf_gn+=" use_kerberos=true"
@@ -429,10 +431,10 @@
 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+=" fieldtrial_testing_like_official_build=true"
-myconf_gn+=" use_gold=true"
+myconf_gn+=" use_allocator=\"partition\""
+myconf_gn+=" use_allocator_shim=true"
+myconf_gn+=" use_partition_alloc=true"
+myconf_gn+=" disable_fieldtrial_testing_config=true"
 myconf_gn+=" use_gnome_keyring=false"
 myconf_gn+=" use_unofficial_version_number=false"
 myconf_gn+=" use_lld=false"
@@ -444,11 +446,17 @@
 myconf_gn+=" icu_use_data_file=false"
 myconf_gn+=" media_use_openh264=false"
 myconf_gn+=" rtc_use_h264=false"
+myconf_gn+=" use_v8_context_snapshot=true"
+myconf_gn+=" v8_use_external_startup_data=true"
+myconf_gn+=" use_system_harfbuzz=true"
+myconf_gn+=" use_system_freetype=true"
 
 %if %{with clang}
 myconf_gn+=" is_clang=true clang_base_path=\"/usr\" 
clang_use_chrome_plugins=false"
+myconf_gn+=" use_lld=true"
 %else
 myconf_gn+=" is_clang=false"
+myconf_gn+=" use_gold=true"
 %endif
 
 %if %{with lto}
@@ -463,7 +471,6 @@
 
 %if %{with pipewire}
 myconf_gn+=" rtc_use_pipewire=true rtc_link_pipewire=true"
-myconf_gn+=" rtc_pipewire_version=\"0.3\""
 %endif
 
 # The proprietary codecs just force the chromium to say they can use it and

++++++ chromium-86-fix-vaapi-on-intel.patch ++++++
--- /var/tmp/diff_new_pack.hODLA7/_old  2022-01-27 23:18:23.150389978 +0100
+++ /var/tmp/diff_new_pack.hODLA7/_new  2022-01-27 23:18:23.154389950 +0100
@@ -1,7 +1,8 @@
-diff -up 
chromium-86.0.4240.75/media/gpu/vaapi/vaapi_video_decode_accelerator.cc.vaapi-intel-fix
 chromium-86.0.4240.75/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
---- 
chromium-86.0.4240.75/media/gpu/vaapi/vaapi_video_decode_accelerator.cc.vaapi-intel-fix
    2020-10-07 12:38:47.000000000 -0400
-+++ chromium-86.0.4240.75/media/gpu/vaapi/vaapi_video_decode_accelerator.cc    
2020-10-14 16:20:46.938556042 -0400
-@@ -58,6 +58,7 @@ unsigned int GetVaFormatForVideoCodecPro
+Index: electron-16.0.6/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
+===================================================================
+--- electron-16.0.6.orig/media/gpu/vaapi/vaapi_video_decode_accelerator.cc     
2022-01-10 16:06:52.097311842 +0100
++++ electron-16.0.6/media/gpu/vaapi/vaapi_video_decode_accelerator.cc  
2022-01-13 16:03:42.777745377 +0100
+@@ -60,6 +60,7 @@ unsigned int GetVaFormatForVideoCodecPro
    return VA_RT_FORMAT_YUV420;
  }
  
@@ -9,7 +10,7 @@
  // Returns true if the CPU is an Intel Gemini Lake or later (including Kaby
  // Lake) Cpu platform id's are referenced from the following file in kernel
  // source arch/x86/include/asm/intel-family.h
-@@ -70,6 +71,7 @@ bool IsGeminiLakeOrLater() {
+@@ -72,6 +73,7 @@ bool IsGeminiLakeOrLater() {
        cpuid.model() >= kGeminiLakeModelId;
    return is_geminilake_or_later;
  }
@@ -17,7 +18,7 @@
  
  }  // namespace
  
-@@ -1214,6 +1216,8 @@ VaapiVideoDecodeAccelerator::DecideBuffe
+@@ -1227,6 +1229,8 @@ VaapiVideoDecodeAccelerator::DecideBuffe
    if (output_mode_ == VideoDecodeAccelerator::Config::OutputMode::IMPORT)
      return BufferAllocationMode::kNormal;
  
@@ -26,7 +27,7 @@
    // On Gemini Lake, Kaby Lake and later we can pass to libva the client's
    // PictureBuffers to decode onto, which skips the use of the Vpp unit and 
its
    // associated format reconciliation copy, avoiding all internal buffer
-@@ -1229,6 +1233,7 @@ VaapiVideoDecodeAccelerator::DecideBuffe
+@@ -1242,6 +1246,7 @@ VaapiVideoDecodeAccelerator::DecideBuffe
        num_extra_pics_ = 3;
      return BufferAllocationMode::kNone;
    }

++++++ chromium-93-ffmpeg-4.4.patch ++++++
From: 52c3e9c0f140a8742034e107fb0f371c0d73bf1d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Marek=20Beh=C3=BAn?= <[email protected]>
Date: Sun, 12 Sep 2021 04:20:11 +0200
Subject: [PATCH] chromium-93: fix building with system-ffmpeg
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

The version of ffmpeg bundled in Chromium changed ABI a little, which
affected the code in that the type of the last parameter of
av_packet_get_side_data() is now size_t instead of int.

This causes Chromium to fail to build with system-ffmpeg if the system
ffmpeg's version does not yet have this ABI change.

Fix the code to be able to compile with older ffmpeg as well.

Signed-off-by: Marek Beh??n <[email protected]>
---
 media/filters/audio_decoder_unittest.cc |  4 ++++
 media/filters/ffmpeg_demuxer.cc         | 16 ++++++++++++++++
 2 files changed, 20 insertions(+)

Index: electron-16.0.6/media/filters/audio_decoder_unittest.cc
===================================================================
--- electron-16.0.6.orig/media/filters/audio_decoder_unittest.cc        
2022-01-10 16:06:52.057311576 +0100
+++ electron-16.0.6/media/filters/audio_decoder_unittest.cc     2022-01-13 
16:04:27.849990428 +0100
@@ -109,7 +109,11 @@ void SetDiscardPadding(AVPacket* packet,
   }
 
   // If the timestamp is positive, try to use FFmpeg's discard data.
+#if LIBAVUTIL_VERSION_MAJOR < 57
+  int skip_samples_size = 0;
+#else
   size_t skip_samples_size = 0;
+#endif
   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));
Index: electron-16.0.6/media/filters/ffmpeg_demuxer.cc
===================================================================
--- electron-16.0.6.orig/media/filters/ffmpeg_demuxer.cc        2022-01-10 
16:06:52.061311603 +0100
+++ electron-16.0.6/media/filters/ffmpeg_demuxer.cc     2022-01-13 
16:04:27.853990450 +0100
@@ -403,11 +403,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);
 
@@ -419,7 +427,11 @@ void FFmpegDemuxerStream::EnqueuePacket(
     buffer = DecoderBuffer::CopyFrom(packet->data, packet->size,
                                      side_data.data(), side_data.size());
   } else {
+#if LIBAVUTIL_VERSION_MAJOR < 57
+    int side_data_size = 0;
+#else
     size_t side_data_size = 0;
+#endif
     uint8_t* side_data = av_packet_get_side_data(
         packet.get(), AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL, &side_data_size);
 
@@ -480,7 +492,11 @@ void FFmpegDemuxerStream::EnqueuePacket(
                                        packet->size - data_offset);
     }
 
+#if LIBAVUTIL_VERSION_MAJOR < 57
+    int skip_samples_size = 0;
+#else
     size_t skip_samples_size = 0;
+#endif
     const uint32_t* skip_samples_ptr =
         reinterpret_cast<const uint32_t*>(av_packet_get_side_data(
             packet.get(), AV_PKT_DATA_SKIP_SAMPLES, &skip_samples_size));

++++++ chromium-94-ffmpeg-roll.patch ++++++
>From b94755e4633045be96ab5e0bdde0db7e16a804bd Mon Sep 17 00:00:00 2001
From: "[email protected]" <[email protected]>
Date: Fri, 6 Aug 2021 04:25:31 +0000
Subject: [PATCH] FFmpeg M94 roll.

Contains DEPS update + chromium-side fixes.

Bug: 1227259
Change-Id: I61c5eaa789ea12c17d0cbcbf837435b9cf32479b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3011889
Reviewed-by: Thomas Guilbert <[email protected]>
Commit-Queue: Frank Liberato <[email protected]>
Cr-Commit-Position: refs/heads/master@{#909174}
---
 media/ffmpeg/ffmpeg_common.h    | 1 +
 media/filters/ffmpeg_demuxer.cc | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/media/ffmpeg/ffmpeg_common.h b/media/ffmpeg/ffmpeg_common.h
index cede8ac5a7..97d6307e28 100644
--- a/media/ffmpeg/ffmpeg_common.h
+++ b/media/ffmpeg/ffmpeg_common.h
@@ -29,7 +29,6 @@ extern "C" {
 #include <libavformat/avformat.h>
 #include <libavformat/avio.h>
 #include <libavutil/avutil.h>
-#include <libavutil/channel_layout.h>
 #include <libavutil/imgutils.h>
 #include <libavutil/log.h>
 #include <libavutil/mastering_display_metadata.h>
diff --git a/media/filters/ffmpeg_demuxer.cc b/media/filters/ffmpeg_demuxer.cc
index ac4713b072..605001d935 100644
--- a/media/filters/ffmpeg_demuxer.cc
+++ b/media/filters/ffmpeg_demuxer.cc
@@ -106,12 +106,12 @@ static base::TimeDelta ExtractStartTime(AVStream* stream) 
{
 
   // Next try to use the first DTS value, for codecs where we know PTS == DTS
   // (excludes all H26x codecs). The start time must be returned in PTS.
+  if (stream->first_dts != kNoFFmpegTimestamp &&
-  if (av_stream_get_first_dts(stream) != kNoFFmpegTimestamp &&
       stream->codecpar->codec_id != AV_CODEC_ID_HEVC &&
       stream->codecpar->codec_id != AV_CODEC_ID_H264 &&
       stream->codecpar->codec_id != AV_CODEC_ID_MPEG4) {
     const base::TimeDelta first_pts =
+        ConvertFromTimeBase(stream->time_base, stream->first_dts);
-        ConvertFromTimeBase(stream->time_base, 
av_stream_get_first_dts(stream));
     if (first_pts < start_time)
       start_time = first_pts;
   }

++++++ chromium-91-compiler.patch -> chromium-95-compiler.patch ++++++
--- /work/SRC/openSUSE:Factory/nodejs-electron/chromium-91-compiler.patch       
2021-08-11 11:48:00.137689837 +0200
+++ 
/work/SRC/openSUSE:Factory/.nodejs-electron.new.1898/chromium-95-compiler.patch 
    2022-01-27 23:17:31.546746496 +0100
@@ -1,17 +1,17 @@
 From f4d0b0eb899005b4b8b6388e1d8bb82cc0018fc8 Mon Sep 17 00:00:00 2001
 From: Mike Gilbert <[email protected]>
-Date: Wed, 7 Apr 2021 08:50:04 +0000
+Date: Sat, 4 Sep 2021 15:13:20 +0000
 Subject: [PATCH] Disable various compiler configs
 
 ---
- build/config/compiler/BUILD.gn | 59 ++++++++++------------------------
- 1 file changed, 17 insertions(+), 42 deletions(-)
+ build/config/compiler/BUILD.gn | 105 ++++++---------------------------
+ 1 file changed, 17 insertions(+), 88 deletions(-)
 
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 72ea590..539672d 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -273,8 +273,6 @@ config("compiler") {
+Index: electron-16.0.6/build/config/compiler/BUILD.gn
+===================================================================
+--- electron-16.0.6.orig/build/config/compiler/BUILD.gn        2022-01-10 
16:06:45.853270221 +0100
++++ electron-16.0.6/build/config/compiler/BUILD.gn     2022-01-13 
16:02:25.885331379 +0100
+@@ -293,8 +293,6 @@ config("compiler") {
  
    configs += [
      # See the definitions below.
@@ -20,7 +20,7 @@
      ":compiler_codegen",
      ":compiler_deterministic",
    ]
-@@ -518,24 +516,6 @@ config("compiler") {
+@@ -533,24 +531,6 @@ config("compiler") {
      ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
    }
  
@@ -45,7 +45,53 @@
    # C11/C++11 compiler flags setup.
    # ---------------------------
    if (is_linux || is_chromeos || is_android || (is_nacl && is_clang) ||
-@@ -1643,7 +1623,7 @@ config("chromium_code") {
+@@ -1241,45 +1221,6 @@ config("compiler_deterministic") {
+     }
+   }
+ 
+-  # Makes builds independent of absolute file path.
+-  if (is_clang && strip_absolute_paths_from_debug_symbols) {
+-    # If debug option is given, clang includes $cwd in debug info by default.
+-    # For such build, this flag generates reproducible obj files even we use
+-    # different build directory like "out/feature_a" and "out/feature_b" if
+-    # we build same files with same compile flag.
+-    # Other paths are already given in relative, no need to normalize them.
+-    if (is_nacl) {
+-      # TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here.
+-      cflags += [
+-        "-Xclang",
+-        "-fdebug-compilation-dir",
+-        "-Xclang",
+-        ".",
+-      ]
+-    } else {
+-      # -ffile-compilation-dir is an alias for both -fdebug-compilation-dir=
+-      # and -fcoverage-compilation-dir=.
+-      cflags += [ "-ffile-compilation-dir=." ]
+-    }
+-    if (!is_win) {
+-      # We don't use clang -cc1as on Windows (yet? https://crbug.com/762167)
+-      asmflags = [ "-Wa,-fdebug-compilation-dir,." ]
+-    }
+-
+-    if (is_win && use_lld) {
+-      if (symbol_level == 2 || (is_clang && using_sanitizer)) {
+-        # Absolutize source file paths for PDB. Pass the real build directory
+-        # if the pdb contains source-level debug information and if linker
+-        # reproducibility is not critical.
+-        ldflags += [ "/PDBSourcePath:" + rebase_path(root_build_dir) ]
+-      } else {
+-        # Use a fake fixed base directory for paths in the pdb to make the pdb
+-        # output fully deterministic and independent of the build directory.
+-        ldflags += [ "/PDBSourcePath:o:\fake\prefix" ]
+-      }
+-    }
+-  }
+-
+   # 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.
+@@ -1562,7 +1503,7 @@ config("chromium_code") {
        defines = [ "_HAS_NODISCARD" ]
      }
    } else {
@@ -54,7 +100,7 @@
      if (treat_warnings_as_errors) {
        cflags += [ "-Werror" ]
  
-@@ -1652,10 +1632,6 @@ config("chromium_code") {
+@@ -1571,10 +1512,6 @@ config("chromium_code") {
        # well.
        ldflags = [ "-Werror" ]
      }
@@ -65,7 +111,7 @@
  
      # In Chromium code, we define __STDC_foo_MACROS in order to get the
      # C99 macros on Mac and Linux.
-@@ -1664,15 +1640,6 @@ config("chromium_code") {
+@@ -1583,15 +1520,6 @@ config("chromium_code") {
        "__STDC_FORMAT_MACROS",
      ]
  
@@ -81,7 +127,7 @@
      if (is_mac) {
        cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
        cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -2068,7 +2035,8 @@ config("default_stack_frames") {
+@@ -1961,7 +1889,8 @@ config("default_stack_frames") {
  }
  
  # Default "optimization on" config.
@@ -91,7 +137,7 @@
    if (is_win) {
      if (chrome_pgo_phase != 2) {
        # Favor size over speed, /O1 must be before the common flags.
-@@ -2103,7 +2071,8 @@ config("optimize") {
+@@ -2001,7 +1930,8 @@ config("optimize") {
  }
  
  # Turn off optimizations.
@@ -101,7 +147,7 @@
    if (is_win) {
      cflags = [
        "/Od",  # Disable optimization.
-@@ -2143,7 +2112,8 @@ config("no_optimize") {
+@@ -2041,7 +1971,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 +157,7 @@
    if (is_nacl && is_nacl_irt) {
      # The NaCl IRT is a special case and always wants its own config.
      # Various components do:
-@@ -2175,7 +2145,8 @@ config("optimize_max") {
+@@ -2074,7 +2005,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 +167,7 @@
    if (is_nacl && is_nacl_irt) {
      # The NaCl IRT is a special case and always wants its own config.
      # Various components do:
-@@ -2200,7 +2171,8 @@ config("optimize_speed") {
+@@ -2100,7 +2032,8 @@ config("optimize_speed") {
    }
  }
  
@@ -129,9 +175,9 @@
 +config("optimize_fuzzing") { }
 +config("xoptimize_fuzzing") {
    cflags = [ "-O1" ] + common_optimize_on_cflags
+   rustflags = [ "-Copt-level=1" ]
    ldflags = common_optimize_on_ldflags
-   visibility = [ ":default_optimization" ]
-@@ -2319,7 +2291,8 @@ config("win_pdbaltpath") {
+@@ -2220,7 +2153,8 @@ config("win_pdbaltpath") {
  }
  
  # Full symbols.
@@ -141,7 +187,7 @@
    if (is_win) {
      if (is_clang) {
        cflags = [ "/Z7" ]  # Debug information in the .obj files.
-@@ -2422,7 +2395,8 @@ config("symbols") {
+@@ -2334,7 +2268,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 +197,7 @@
    if (is_win) {
      # Functions, files, and line tables only.
      cflags = []
-@@ -2481,7 +2455,8 @@ config("minimal_symbols") {
+@@ -2406,7 +2341,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.
@@ -161,5 +207,3 @@
    if (is_win) {
      ldflags = [ "/DEBUG" ]
  
--- 
-2.26.3

++++++ chromium-96-CommandLine-include.patch ++++++
>From 39e6e77798d86033e5eb1fb2a2caf20a5bca2262 Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <[email protected]>
Date: Sat, 9 Oct 2021 08:27:04 +0000
Subject: [PATCH] IWYU: add memory for std::unique_ptr in base::CommandLine

---
 base/command_line.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/base/command_line.h b/base/command_line.h
index 706726a..ad02812 100644
--- a/base/command_line.h
+++ b/base/command_line.h
@@ -19,6 +19,7 @@
 #include <stddef.h>
 #include <functional>
 #include <map>
+#include <memory>
 #include <string>
 #include <vector>
 
-- 
2.32.0


++++++ chromium-96-CouponDB-include.patch ++++++
>From 3a7b8dd0fcceffcfd0ea7e3186d2850deed7a00b Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <[email protected]>
Date: Wed, 6 Oct 2021 15:36:47 +0000
Subject: [PATCH] IWYU: add vector for std::vector in CouponDB

---
 chrome/browser/commerce/coupons/coupon_db.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/chrome/browser/commerce/coupons/coupon_db.h 
b/chrome/browser/commerce/coupons/coupon_db.h
index f0758f4..93e2dd3 100644
--- a/chrome/browser/commerce/coupons/coupon_db.h
+++ b/chrome/browser/commerce/coupons/coupon_db.h
@@ -5,6 +5,8 @@
 #ifndef CHROME_BROWSER_COMMERCE_COUPONS_COUPON_DB_H_
 #define CHROME_BROWSER_COMMERCE_COUPONS_COUPON_DB_H_
 
+#include <vector>
+
 #include "base/callback_helpers.h"
 #include "base/memory/weak_ptr.h"
 #include "url/gurl.h"
-- 
2.32.0


++++++ chromium-96-DrmRenderNodePathFinder-include.patch ++++++
>From 9e36b3c28935fb50d43ccef443be786a8e3f8a5f Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <[email protected]>
Date: Sat, 9 Oct 2021 16:17:34 +0000
Subject: [PATCH] IWYU: add string.h for memcmp in ui:: DrmRenderNodePathFinder

---
 ui/ozone/platform/wayland/gpu/drm_render_node_path_finder.cc | 1 +
 1 file changed, 1 insertion(+)

diff --git a/ui/ozone/platform/wayland/gpu/drm_render_node_path_finder.cc 
b/ui/ozone/platform/wayland/gpu/drm_render_node_path_finder.cc
index 06776a7..d5b7b71 100644
--- a/ui/ozone/platform/wayland/gpu/drm_render_node_path_finder.cc
+++ b/ui/ozone/platform/wayland/gpu/drm_render_node_path_finder.cc
@@ -5,6 +5,7 @@
 #include "ui/ozone/platform/wayland/gpu/drm_render_node_path_finder.h"
 
 #include <fcntl.h>
+#include <string.h>
 #include <sys/stat.h>
 #include <sys/types.h>
 #include <unistd.h>
-- 
2.32.0


++++++ chromium-96-RestrictedCookieManager-tuple.patch ++++++
>From 86b1886673c3e75d3a7b8c802b3e9fa6ea945a1e Mon Sep 17 00:00:00 2001
From: Jose Dapena Paz <[email protected]>
Date: Fri, 08 Oct 2021 06:32:55 +0000
Subject: [PATCH] libstdc++: no implicit conversion from tuple created with 
std::tie to an std::pair in restricted cookie manager.

Fix compilation error:
    ../../services/network/restricted_cookie_manager.cc:164:30: error: no match 
for ???operator[]??? (operand types are 
???network::CookieAccessesByURLAndSite??? {aka ???std::map<std::pair<GURL, 
net::SiteForCookies>, std::unique_ptr<std::set<net::CookieWithAccessResult, 
network::CookieWithAccessResultComparer> > >???} and ???std::tuple<const GURL&, 
const net::SiteForCookies&>???)

There is no conversion from tuple to pair.

Bug: 957519
Change-Id: Idf29c7b21895ae28f45b35d6193ab4ac555945c8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3211752
Reviewed-by: Robbie McElrath <[email protected]>
Commit-Queue: Jos?? Dapena Paz <[email protected]>
Cr-Commit-Position: refs/heads/main@{#929597}
---

diff --git a/services/network/restricted_cookie_manager.cc 
b/services/network/restricted_cookie_manager.cc
index 425426f..c8c10c6 100644
--- a/services/network/restricted_cookie_manager.cc
+++ b/services/network/restricted_cookie_manager.cc
@@ -161,7 +161,7 @@
     const GURL& url,
     const net::SiteForCookies& site_for_cookies) {
   std::unique_ptr<CookieAccesses>& entry =
-      recent_cookie_accesses_[std::tie(url, site_for_cookies)];
+      recent_cookie_accesses_[std::make_pair(url, site_for_cookies)];
   if (!entry) {
     entry = std::make_unique<CookieAccesses>();
   }

++++++ chromium-disable-parallel-gold.patch ++++++
--- /var/tmp/diff_new_pack.hODLA7/_old  2022-01-27 23:18:23.222389481 +0100
+++ /var/tmp/diff_new_pack.hODLA7/_new  2022-01-27 23:18:23.226389453 +0100
@@ -1,8 +1,8 @@
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 01d97a360..a9a721403 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -415,8 +415,6 @@ config("compiler") {
+Index: electron-16.0.6/build/config/compiler/BUILD.gn
+===================================================================
+--- electron-16.0.6.orig/build/config/compiler/BUILD.gn        2022-01-13 
16:02:25.885331379 +0100
++++ electron-16.0.6/build/config/compiler/BUILD.gn     2022-01-13 
16:02:32.341363898 +0100
+@@ -473,8 +473,6 @@ config("compiler") {
          # 
https://groups.google.com/a/chromium.org/group/chromium-dev/browse_thread/thread/281527606915bb36
          # Only apply this to the target linker, since the host
          # linker might not be gold, but isn't used much anyway.

++++++ chromium-gcc11.patch ++++++
--- /var/tmp/diff_new_pack.hODLA7/_old  2022-01-27 23:18:23.238389370 +0100
+++ /var/tmp/diff_new_pack.hODLA7/_new  2022-01-27 23:18:23.242389342 +0100
@@ -1,7 +1,7 @@
-diff --git a/third_party/angle/src/libANGLE/HandleAllocator.cpp 
b/third_party/angle/src/libANGLE/HandleAllocator.cpp
-index 013f1dfb2..3ce63c192 100644
---- a/third_party/angle/src/libANGLE/HandleAllocator.cpp
-+++ b/third_party/angle/src/libANGLE/HandleAllocator.cpp
+Index: electron-16.0.6/third_party/angle/src/libANGLE/HandleAllocator.cpp
+===================================================================
+--- electron-16.0.6.orig/third_party/angle/src/libANGLE/HandleAllocator.cpp    
2022-01-10 16:09:11.798243050 +0100
++++ electron-16.0.6/third_party/angle/src/libANGLE/HandleAllocator.cpp 
2022-01-13 16:02:43.673424038 +0100
 @@ -9,6 +9,7 @@
  
  #include "libANGLE/HandleAllocator.h"
@@ -10,10 +10,10 @@
  #include <algorithm>
  #include <functional>
  
-diff --git 
a/third_party/perfetto/src/trace_processor/containers/string_pool.cc 
b/third_party/perfetto/src/trace_processor/containers/string_pool.cc
-index fd651958f..1e8d0606c 100644
---- a/third_party/perfetto/src/trace_processor/containers/string_pool.cc
-+++ b/third_party/perfetto/src/trace_processor/containers/string_pool.cc
+Index: 
electron-16.0.6/third_party/perfetto/src/trace_processor/containers/string_pool.cc
+===================================================================
+--- 
electron-16.0.6.orig/third_party/perfetto/src/trace_processor/containers/string_pool.cc
    2022-01-10 16:14:42.636448325 +0100
++++ 
electron-16.0.6/third_party/perfetto/src/trace_processor/containers/string_pool.cc
 2022-01-13 16:02:43.673424038 +0100
 @@ -14,9 +14,9 @@
   * limitations under the License.
   */
@@ -25,10 +25,10 @@
  
  #include "perfetto/base/logging.h"
  #include "perfetto/ext/base/utils.h"
-diff --git a/third_party/perfetto/src/trace_processor/db/column.cc 
b/third_party/perfetto/src/trace_processor/db/column.cc
-index 00496b335..0dccfeb8a 100644
---- a/third_party/perfetto/src/trace_processor/db/column.cc
-+++ b/third_party/perfetto/src/trace_processor/db/column.cc
+Index: electron-16.0.6/third_party/perfetto/src/trace_processor/db/column.cc
+===================================================================
+--- electron-16.0.6.orig/third_party/perfetto/src/trace_processor/db/column.cc 
2022-01-10 16:14:42.636448325 +0100
++++ electron-16.0.6/third_party/perfetto/src/trace_processor/db/column.cc      
2022-01-13 16:02:43.673424038 +0100
 @@ -14,6 +14,7 @@
   * limitations under the License.
   */
@@ -37,10 +37,10 @@
  #include "src/trace_processor/db/column.h"
  
  #include "src/trace_processor/db/compare.h"
-diff --git a/third_party/perfetto/src/trace_processor/types/variadic.cc 
b/third_party/perfetto/src/trace_processor/types/variadic.cc
-index 837bfeba9..cdd56817d 100644
---- a/third_party/perfetto/src/trace_processor/types/variadic.cc
-+++ b/third_party/perfetto/src/trace_processor/types/variadic.cc
+Index: 
electron-16.0.6/third_party/perfetto/src/trace_processor/types/variadic.cc
+===================================================================
+--- 
electron-16.0.6.orig/third_party/perfetto/src/trace_processor/types/variadic.cc 
   2022-01-10 16:14:42.656448460 +0100
++++ electron-16.0.6/third_party/perfetto/src/trace_processor/types/variadic.cc 
2022-01-13 16:02:43.677424060 +0100
 @@ -14,6 +14,7 @@
   * limitations under the License.
   */
@@ -49,11 +49,11 @@
  #include "src/trace_processor/types/variadic.h"
  
  namespace perfetto {
-diff --git a/ui/accessibility/platform/ax_platform_atk_hyperlink.cc 
b/ui/accessibility/platform/ax_platform_atk_hyperlink.cc
-index be91def6b..73f202356 100644
---- a/ui/accessibility/platform/ax_platform_atk_hyperlink.cc
-+++ b/ui/accessibility/platform/ax_platform_atk_hyperlink.cc
-@@ -245,7 +245,7 @@ static void 
AXPlatformAtkHyperlinkInit(AXPlatformAtkHyperlink* self, gpointer) {
+Index: electron-16.0.6/ui/accessibility/platform/ax_platform_atk_hyperlink.cc
+===================================================================
+--- 
electron-16.0.6.orig/ui/accessibility/platform/ax_platform_atk_hyperlink.cc     
   2022-01-10 16:07:03.045384820 +0100
++++ electron-16.0.6/ui/accessibility/platform/ax_platform_atk_hyperlink.cc     
2022-01-13 16:02:43.677424060 +0100
+@@ -245,7 +245,7 @@ static void AXPlatformAtkHyperlinkInit(A
  }
  
  GType ax_platform_atk_hyperlink_get_type() {
@@ -62,11 +62,11 @@
  
    AXPlatformNodeAuraLinux::EnsureGTypeInit();
  
-diff --git a/ui/accessibility/platform/ax_platform_node_auralinux.cc 
b/ui/accessibility/platform/ax_platform_node_auralinux.cc
-index 04125c6fd..6c64e5d8e 100644
---- a/ui/accessibility/platform/ax_platform_node_auralinux.cc
-+++ b/ui/accessibility/platform/ax_platform_node_auralinux.cc
-@@ -2274,7 +2274,7 @@ void ClassInit(gpointer class_pointer, gpointer /* 
class_data */) {
+Index: electron-16.0.6/ui/accessibility/platform/ax_platform_node_auralinux.cc
+===================================================================
+--- 
electron-16.0.6.orig/ui/accessibility/platform/ax_platform_node_auralinux.cc    
   2022-01-10 16:07:03.049384849 +0100
++++ electron-16.0.6/ui/accessibility/platform/ax_platform_node_auralinux.cc    
2022-01-13 16:02:43.677424060 +0100
+@@ -2274,7 +2274,7 @@ void ClassInit(gpointer class_pointer, g
  GType GetType() {
    AXPlatformNodeAuraLinux::EnsureGTypeInit();
  
@@ -75,11 +75,11 @@
    if (g_once_init_enter(&type_volatile)) {
      static const GTypeInfo type_info = {
          sizeof(AXPlatformNodeAuraLinuxClass),  // class_size
-diff --git a/ui/gtk/gtk_key_bindings_handler.cc 
b/ui/gtk/gtk_key_bindings_handler.cc
-index c663a2074..38a342484 100644
---- a/ui/gtk/gtk_key_bindings_handler.cc
-+++ b/ui/gtk/gtk_key_bindings_handler.cc
-@@ -141,7 +141,7 @@ void GtkKeyBindingsHandler::HandlerClassInit(HandlerClass* 
klass) {
+Index: electron-16.0.6/ui/gtk/gtk_key_bindings_handler.cc
+===================================================================
+--- electron-16.0.6.orig/ui/gtk/gtk_key_bindings_handler.cc    2022-01-10 
16:07:03.365386955 +0100
++++ electron-16.0.6/ui/gtk/gtk_key_bindings_handler.cc 2022-01-13 
16:02:43.677424060 +0100
+@@ -120,7 +120,7 @@ void GtkKeyBindingsHandler::HandlerClass
  }
  
  GType GtkKeyBindingsHandler::HandlerGetType() {
@@ -88,10 +88,10 @@
    if (g_once_init_enter(&type_id_volatile)) {
      GType type_id = g_type_register_static_simple(
          GTK_TYPE_TEXT_VIEW, g_intern_static_string("GtkKeyBindingsHandler"),
-diff --git a/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc 
b/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc
-index c0b5a805b..e6f921926 100644
---- a/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc
-+++ b/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc
+Index: electron-16.0.6/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc
+===================================================================
+--- electron-16.0.6.orig/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc    
2022-01-10 16:06:47.881283740 +0100
++++ electron-16.0.6/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc 
2022-01-13 16:02:43.681424081 +0100
 @@ -2,6 +2,7 @@
  // Use of this source code is governed by a BSD-style license that can be
  // found in the LICENSE file.
@@ -100,10 +100,10 @@
  #include "chrome/browser/ui/bookmarks/bookmark_tab_helper.h"
  
  #include "base/observer_list.h"
-diff --git a/components/bookmarks/browser/bookmark_expanded_state_tracker.cc 
b/components/bookmarks/browser/bookmark_expanded_state_tracker.cc
-index 4ad2afa1f..5c4596e12 100644
---- a/components/bookmarks/browser/bookmark_expanded_state_tracker.cc
-+++ b/components/bookmarks/browser/bookmark_expanded_state_tracker.cc
+Index: 
electron-16.0.6/components/bookmarks/browser/bookmark_expanded_state_tracker.cc
+===================================================================
+--- 
electron-16.0.6.orig/components/bookmarks/browser/bookmark_expanded_state_tracker.cc
       2022-01-10 16:06:49.325293365 +0100
++++ 
electron-16.0.6/components/bookmarks/browser/bookmark_expanded_state_tracker.cc 
   2022-01-13 16:02:43.681424081 +0100
 @@ -2,6 +2,7 @@
  // Use of this source code is governed by a BSD-style license that can be
  // found in the LICENSE file.
@@ -112,10 +112,10 @@
  #include "components/bookmarks/browser/bookmark_expanded_state_tracker.h"
  
  #include <stdint.h>
-diff --git a/components/bookmarks/browser/base_bookmark_model_observer.cc 
b/components/bookmarks/browser/base_bookmark_model_observer.cc
-index 657a3c96b..ad641a082 100644
---- a/components/bookmarks/browser/base_bookmark_model_observer.cc
-+++ b/components/bookmarks/browser/base_bookmark_model_observer.cc
+Index: 
electron-16.0.6/components/bookmarks/browser/base_bookmark_model_observer.cc
+===================================================================
+--- 
electron-16.0.6.orig/components/bookmarks/browser/base_bookmark_model_observer.cc
  2022-01-10 16:06:49.325293365 +0100
++++ 
electron-16.0.6/components/bookmarks/browser/base_bookmark_model_observer.cc    
   2022-01-13 16:02:43.681424081 +0100
 @@ -2,6 +2,8 @@
  // Use of this source code is governed by a BSD-style license that can be
  // found in the LICENSE file.

++++++ chromium-glibc-2.34.patch ++++++
--- /var/tmp/diff_new_pack.hODLA7/_old  2022-01-27 23:18:23.250389287 +0100
+++ /var/tmp/diff_new_pack.hODLA7/_new  2022-01-27 23:18:23.254389259 +0100
@@ -1,38 +1,28 @@
-From 600d63c2c59a9892dbc5423d7d8bb1565a9f91e7 Mon Sep 17 00:00:00 2001
-From: Michel Salim <[email protected]>
-Date: Thu, 04 Nov 2021 14:22:40 -0700
-Subject: [PATCH] Handle long SIGSTKSZ in glibc > 2.33
-
-`SIGSTKSZ` is no longer constant in glibc > 2.33 but a function
-returning a long. Cast before taking `max`.
-
-See 
https://sourceware.org/git/?p=glibc.git;a=blob;f=NEWS;h=85e84fe53699fe9e392edffa993612ce08b2954a;hb=HEAD
-
-Signed-off-by: Michel Salim <[email protected]>
-Change-Id: I197f8ff3053eede80d6aed096be4f0113dd43241
-(relocated to chromium repo, removed static)
-
-[Guillaume: drop 2.33 only part and update context of the patch to apply 
properly]
----
-diff --git a/sandbox/linux/services/credentials.cc 
b/sandbox/linux/services/credentials.cc
-index ca6b595..1c1ee42 100644
---- a/sandbox/linux/services/credentials.cc
-+++ b/sandbox/linux/services/credentials.cc
-@@ -11,6 +11,7 @@
- #include <stddef.h>
- #include <stdint.h>
- #include <stdio.h>
-+#include <string.h>
- #include <sys/syscall.h>
- #include <sys/types.h>
- #include <sys/wait.h>
-@@ -100,7 +101,8 @@ bool ChrootToSafeEmptyDir() {
-   // attempt this optimization.
+Index: 
electron-16.0.6/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
+===================================================================
+--- 
electron-16.0.6.orig/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
   2022-01-10 16:08:04.821796604 +0100
++++ 
electron-16.0.6/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
        2022-01-13 16:03:37.805718344 +0100
+@@ -138,7 +138,7 @@ void InstallAlternateStackLocked() {
+   // SIGSTKSZ may be too small to prevent the signal handlers from overrunning
+   // the alternative stack. Ensure that the size of the alternative stack is
+   // large enough.
+-  static const unsigned kSigStackSize = std::max(16384, SIGSTKSZ);
++  static const unsigned kSigStackSize = std::max<size_t>(16384, SIGSTKSZ);
+ 
+   // Only set an alternative stack if there isn't already one, or if the 
current
+   // one is too small.
+Index: electron-16.0.6/sandbox/linux/services/credentials.cc
+===================================================================
+--- electron-16.0.6.orig/sandbox/linux/services/credentials.cc 2022-01-10 
16:06:52.909317255 +0100
++++ electron-16.0.6/sandbox/linux/services/credentials.cc      2022-01-13 
16:03:37.805718344 +0100
+@@ -100,7 +100,9 @@ bool ChrootToSafeEmptyDir() {
+   // TODO(crbug.com/1247458) Broken in MSan builds after LLVM f1bb30a4956f.
    clone_flags |= CLONE_VM | CLONE_VFORK | CLONE_SETTLS;
  
 -  char tls_buf[PTHREAD_STACK_MIN] = {0};
-+  char tls_buf[PTHREAD_STACK_MIN];
-+  memset(tls_buf, 0, PTHREAD_STACK_MIN);
++  const std::size_t pthread_stack_min = PTHREAD_STACK_MIN;
++  char tls_buf[pthread_stack_min];
++  memset(tls_buf, 0, pthread_stack_min);
    tls = tls_buf;
  #endif
  

++++++ chromium-norar.patch ++++++
--- /var/tmp/diff_new_pack.hODLA7/_old  2022-01-27 23:18:23.262389204 +0100
+++ /var/tmp/diff_new_pack.hODLA7/_new  2022-01-27 23:18:23.266389176 +0100
@@ -1,11 +1,11 @@
-Index: chromium-86.0.4240.75/chrome/common/safe_browsing/BUILD.gn
+Index: electron-16.0.6/chrome/common/safe_browsing/BUILD.gn
 ===================================================================
---- chromium-86.0.4240.75.orig/chrome/common/safe_browsing/BUILD.gn
-+++ chromium-86.0.4240.75/chrome/common/safe_browsing/BUILD.gn
-@@ -43,38 +43,6 @@
-     public_deps = [ "//components/safe_browsing/core:csd_proto" ]
+--- electron-16.0.6.orig/chrome/common/safe_browsing/BUILD.gn  2022-01-10 
16:06:48.181285739 +0100
++++ electron-16.0.6/chrome/common/safe_browsing/BUILD.gn       2022-01-13 
16:03:25.281650253 +0100
+@@ -58,39 +58,6 @@ if (safe_browsing_mode == 1) {
+     public_deps = [ "//components/safe_browsing/core/common/proto:csd_proto" ]
    }
-
+ 
 -  source_set("rar_analyzer") {
 -    sources = [
 -      "rar_analyzer.cc",
@@ -17,8 +17,8 @@
 -      ":download_type_util",
 -      "//base",
 -      "//base:i18n",
--      "//components/safe_browsing/core:features",
--      "//components/safe_browsing/core:file_type_policies",
+-      "//components/safe_browsing/content/common:file_type_policies",
+-      "//components/safe_browsing/core/common",
 -      "//third_party/unrar:unrar",
 -    ]
 -
@@ -36,34 +36,47 @@
 -      "UNRAR_NO_EXCEPTIONS",
 -    ]
 -
--    public_deps = [ "//components/safe_browsing/core:csd_proto" ]
+-    public_deps = [ "//components/safe_browsing/core/common/proto:csd_proto" ]
 -  }
-
-   if (is_mac) {
-     source_set("disk_image_type_sniffer_mac") {
-@@ -138,7 +105,6 @@ source_set("safe_browsing") {
+-
+   if (is_linux || is_win) {
+     source_set("document_analyzer") {
+       sources = [
+@@ -189,7 +156,6 @@ source_set("safe_browsing") {
        ":archive_analyzer_results",
        ":binary_feature_extractor",
        ":download_type_util",
 -      ":rar_analyzer",
-       "//components/safe_browsing/core:features",
+       "//components/safe_browsing/core/common",
      ]
  
-Index: chromium-86.0.4240.75/chrome/common/safe_browsing/DEPS
+Index: electron-16.0.6/chrome/common/safe_browsing/DEPS
 ===================================================================
---- chromium-86.0.4240.75.orig/chrome/common/safe_browsing/DEPS
-+++ chromium-86.0.4240.75/chrome/common/safe_browsing/DEPS
-@@ -1,6 +1,5 @@
- include_rules = [
-   "+components/safe_browsing",
+--- electron-16.0.6.orig/chrome/common/safe_browsing/DEPS      2022-01-13 
16:02:48.153448394 +0100
++++ electron-16.0.6/chrome/common/safe_browsing/DEPS   2022-01-13 
16:02:59.521510198 +0100
+@@ -3,6 +3,5 @@ include_rules = [
+   "+components/safe_browsing/core/common",
+   "+third_party/maldoca",
    "+third_party/protobuf",
 -  "+third_party/unrar",
    "+third_party/zlib",
  ]
-Index: chromium-86.0.4240.75/chrome/services/file_util/safe_archive_analyzer.cc
+Index: electron-16.0.6/chrome/services/file_util/BUILD.gn
 ===================================================================
---- 
chromium-86.0.4240.75.orig/chrome/services/file_util/safe_archive_analyzer.cc
-+++ chromium-86.0.4240.75/chrome/services/file_util/safe_archive_analyzer.cc
+--- electron-16.0.6.orig/chrome/services/file_util/BUILD.gn    2022-01-13 
16:02:48.153448394 +0100
++++ electron-16.0.6/chrome/services/file_util/BUILD.gn 2022-01-13 
16:02:59.521510198 +0100
+@@ -60,7 +60,6 @@ source_set("file_util") {
+     deps += [
+       "//chrome/common/safe_browsing",
+       "//chrome/common/safe_browsing:archive_analyzer_results",
+-      "//chrome/common/safe_browsing:rar_analyzer",
+     ]
+ 
+     if (is_linux || is_win) {
+Index: electron-16.0.6/chrome/services/file_util/safe_archive_analyzer.cc
+===================================================================
+--- electron-16.0.6.orig/chrome/services/file_util/safe_archive_analyzer.cc    
2022-01-13 16:02:48.153448394 +0100
++++ electron-16.0.6/chrome/services/file_util/safe_archive_analyzer.cc 
2022-01-13 16:02:59.521510198 +0100
 @@ -45,10 +45,14 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile
  void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file,
                                           base::File temporary_file,
@@ -79,16 +92,4 @@
 +  NOTREACHED();
 +#endif
  }
-Index: chromium-86.0.4240.75/chrome/services/file_util/BUILD.gn
-===================================================================
---- 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",
-   ]
 

++++++ chromium-system-libusb.patch ++++++
--- /var/tmp/diff_new_pack.hODLA7/_old  2022-01-27 23:18:23.278389093 +0100
+++ /var/tmp/diff_new_pack.hODLA7/_new  2022-01-27 23:18:23.278389093 +0100
@@ -1,7 +1,7 @@
-Index: chromium-70.0.3538.54/build/linux/unbundle/libusb.gn
+Index: electron-16.0.6/build/linux/unbundle/libusb.gn
 ===================================================================
---- /dev/null
-+++ chromium-70.0.3538.54/build/linux/unbundle/libusb.gn
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ electron-16.0.6/build/linux/unbundle/libusb.gn     2022-01-13 
16:02:37.237389046 +0100
 @@ -0,0 +1,24 @@
 +# Copyright 2016 The Chromium Authors. All rights reserved.
 +# Use of this source code is governed by a BSD-style license that can be
@@ -27,11 +27,11 @@
 +  ]
 +  public_configs = [ ":system_libusb" ]
 +}
-Index: chromium-70.0.3538.54/build/linux/unbundle/replace_gn_files.py
+Index: electron-16.0.6/build/linux/unbundle/replace_gn_files.py
 ===================================================================
---- chromium-70.0.3538.54.orig/build/linux/unbundle/replace_gn_files.py
-+++ chromium-70.0.3538.54/build/linux/unbundle/replace_gn_files.py
-@@ -27,6 +27,7 @@ REPLACEMENTS = {
+--- electron-16.0.6.orig/build/linux/unbundle/replace_gn_files.py      
2022-01-10 16:06:45.861270275 +0100
++++ electron-16.0.6/build/linux/unbundle/replace_gn_files.py   2022-01-13 
16:02:37.237389046 +0100
+@@ -25,6 +25,7 @@ REPLACEMENTS = {
    'libevent': 'base/third_party/libevent/BUILD.gn',
    'libjpeg': 'third_party/libjpeg.gni',
    'libpng': 'third_party/libpng/BUILD.gn',

++++++ chromium-vaapi.patch ++++++
--- /var/tmp/diff_new_pack.hODLA7/_old  2022-01-27 23:18:23.290389011 +0100
+++ /var/tmp/diff_new_pack.hODLA7/_new  2022-01-27 23:18:23.294388983 +0100
@@ -1,7 +1,8 @@
-diff -up chromium-88.0.4324.11/chrome/browser/about_flags.cc.accel-mjpeg 
chromium-88.0.4324.11/chrome/browser/about_flags.cc
---- chromium-88.0.4324.11/chrome/browser/about_flags.cc.accel-mjpeg    
2020-11-19 20:51:19.000000000 -0500
-+++ chromium-88.0.4324.11/chrome/browser/about_flags.cc        2020-11-30 
16:14:32.393366384 -0500
-@@ -3526,12 +3526,12 @@
+Index: electron-16.0.6/chrome/browser/about_flags.cc
+===================================================================
+--- electron-16.0.6.orig/chrome/browser/about_flags.cc 2022-01-10 
16:06:46.589275127 +0100
++++ electron-16.0.6/chrome/browser/about_flags.cc      2022-01-13 
16:03:32.565689855 +0100
+@@ -3817,12 +3817,12 @@ const FeatureEntry kFeatureEntries[] = {
       flag_descriptions::kWebXrForceRuntimeDescription, kOsDesktop,
       MULTI_VALUE_TYPE(kWebXrForceRuntimeChoices)},
  #endif  // ENABLE_VR
@@ -17,13 +18,14 @@
      {"system-keyboard-lock", flag_descriptions::kSystemKeyboardLockName,
       flag_descriptions::kSystemKeyboardLockDescription, kOsDesktop,
       FEATURE_VALUE_TYPE(features::kSystemKeyboardLock)},
-diff -up chromium-88.0.4324.11/chrome/browser/flag_descriptions.cc.accel-mjpeg 
chromium-88.0.4324.11/chrome/browser/flag_descriptions.cc
---- chromium-88.0.4324.11/chrome/browser/flag_descriptions.cc.accel-mjpeg      
2020-11-30 16:14:32.393366384 -0500
-+++ chromium-88.0.4324.11/chrome/browser/flag_descriptions.cc  2020-11-30 
16:20:50.174195910 -0500
-@@ -3704,12 +3704,24 @@
+Index: electron-16.0.6/chrome/browser/flag_descriptions.cc
+===================================================================
+--- electron-16.0.6.orig/chrome/browser/flag_descriptions.cc   2022-01-10 
16:06:47.041278140 +0100
++++ electron-16.0.6/chrome/browser/flag_descriptions.cc        2022-01-13 
16:03:32.569689877 +0100
+@@ -4002,12 +4002,24 @@ const char kAccountManagementFlowsV2Desc
      "Settings. "
      "See go/betterAM";
-
+ 
 +#endif
 +
 +// Chrome OS and Linux 
--------------------------------------------------------
@@ -35,7 +37,7 @@
  const char kAcceleratedMjpegDecodeDescription[] =
      "Enable hardware-accelerated mjpeg decode for captured frame where "
      "available.";
-
+ 
 +#endif
 +
 +// Chrome OS 
------------------------------------------------------------------
@@ -45,13 +47,14 @@
  const char kAllowDisableMouseAccelerationName[] =
      "Allow disabling mouse acceleration";
  const char kAllowDisableMouseAccelerationDescription[] =
-diff -up chromium-88.0.4324.11/chrome/browser/flag_descriptions.h.accel-mjpeg 
chromium-88.0.4324.11/chrome/browser/flag_descriptions.h
---- chromium-88.0.4324.11/chrome/browser/flag_descriptions.h.accel-mjpeg       
2020-11-30 16:14:32.394366389 -0500
-+++ chromium-88.0.4324.11/chrome/browser/flag_descriptions.h   2020-11-30 
16:22:13.831601058 -0500
-@@ -2138,9 +2138,21 @@
+Index: electron-16.0.6/chrome/browser/flag_descriptions.h
+===================================================================
+--- electron-16.0.6.orig/chrome/browser/flag_descriptions.h    2022-01-10 
16:06:47.041278140 +0100
++++ electron-16.0.6/chrome/browser/flag_descriptions.h 2022-01-13 
16:03:32.573689898 +0100
+@@ -2295,9 +2295,21 @@ extern const char kUseAngleGL[];
  extern const char kAccountManagementFlowsV2Name[];
  extern const char kAccountManagementFlowsV2Description[];
-
+ 
 +#endif
 +
 +// Chrome OS and Linux 
--------------------------------------------------------
@@ -60,7 +63,7 @@
 +
  extern const char kAcceleratedMjpegDecodeName[];
  extern const char kAcceleratedMjpegDecodeDescription[];
-
+ 
 +#endif
 +
 +#if BUILDFLAG(IS_CHROMEOS_ASH)
@@ -69,5 +72,5 @@
 +
  extern const char kAllowDisableMouseAccelerationName[];
  extern const char kAllowDisableMouseAccelerationDescription[];
-
+ 
 

++++++ create_tarball.sh ++++++
--- /var/tmp/diff_new_pack.hODLA7/_old  2022-01-27 23:18:23.306388900 +0100
+++ /var/tmp/diff_new_pack.hODLA7/_new  2022-01-27 23:18:23.310388873 +0100
@@ -9,13 +9,8 @@
 ELECTRON_TMPDIR=$(mktemp --tmpdir -d electron-XXXXXXXX)
 ELECTRON_PATH="${ELECTRON_TMPDIR}/${ELECTRON_PKGNAME}-${ELECTRON_PKGVERSION}"
 
-# The chromium version we want to base electron on. Use the same version
-# as in network:chromium/chromium if you update.
-CHROMIUM_VERSION="91.0.4472.164"
-
 echo "NAME:    $ELECTRON_PKGNAME"
 echo "VERSION: $ELECTRON_PKGVERSION"
-echo "CHROMIUM_VERSION: $CHROMIUM_VERSION"
 echo "PATH:    $ELECTRON_PATH"
 
 cleanup_tmpdir() {
@@ -45,10 +40,6 @@
 export PATH
 
 
-echo ">>>>>> Downloading chromium-${CHROMIUM_VERSION}"
-git clone --branch=${CHROMIUM_VERSION} --depth=1 \
-      https://chromium.googlesource.com/chromium/src.git
-
 echo ">>>>>> Create gclient config"
 cat >.gclient <<EOF
 solutions = [
@@ -99,6 +90,12 @@
     --output_name=src/chrome/android/profiles/afdo.prof \
     --gs_url_base=chromeos-prebuilt/afdo-job/llvm
 
+echo ">>>>>> Download pgo profiles"
+python3 src/tools/update_pgo_profiles.py \
+    --target=linux \
+    update \
+    --gs-url-base=chromium-optimization-profiles/pgo_profiles
+
 # Needed to get typescript compiler
 echo ">>>>>> Get node modules for third_party/node"
 bash src/third_party/node/update_npm_deps
@@ -140,6 +137,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
@@ -151,7 +149,6 @@
     third_party/angle/src/common/third_party/base
     third_party/angle/src/common/third_party/smhasher
     third_party/angle/src/common/third_party/xxhash
-    third_party/angle/src/third_party/compiler
     third_party/angle/src/third_party/libXNVCtrl
     third_party/angle/src/third_party/trace_event
     third_party/angle/src/third_party/volk
@@ -167,6 +164,7 @@
     third_party/catapult/common/py_vulcanize/third_party/rcssmin
     third_party/catapult/common/py_vulcanize/third_party/rjsmin
     third_party/catapult/third_party/beautifulsoup4
+    third_party/catapult/third_party/html5lib-1.1/
     third_party/catapult/third_party/html5lib-python
     third_party/catapult/third_party/polymer
     third_party/catapult/third_party/six
@@ -187,6 +185,8 @@
     third_party/cros_system_api
     third_party/dav1d
     third_party/dawn
+    third_party/dawn/third_party
+    third_party/dawn/third_party/tint/src/ast
     third_party/depot_tools
     third_party/depot_tools/third_party/six
     third_party/devscripts
@@ -195,7 +195,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
@@ -205,6 +205,8 @@
     third_party/devtools-frontend/src/front_end/third_party/puppeteer
     third_party/devtools-frontend/src/front_end/third_party/wasmparser
     third_party/devtools-frontend/src/third_party
+    third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
+    third_party/distributed_point_functions
     third_party/dom_distiller_js
     third_party/eigen3
     third_party/electron_node
@@ -231,7 +233,6 @@
     third_party/jstemplate
     third_party/khronos
     third_party/leveldatabase
-    third_party/libXNVCtrl
     third_party/libaddressinput
     third_party/libaom
     third_party/libaom/source/libaom/third_party/fastfeat
@@ -255,12 +256,15 @@
     third_party/libx11/src
     third_party/libxcb-keysyms/keysyms
     third_party/libxml/chromium
+    third_party/libXNVCtrl
     third_party/libyuv
     third_party/libzip
     third_party/lottie
     third_party/lss
     third_party/lzma_sdk
     third_party/mako
+    third_party/maldoca
+    third_party/maldoca/src/third_party
     third_party/markupsafe
     third_party/mesa
     third_party/metrics_proto
@@ -321,7 +325,6 @@
     third_party/tcmalloc
     third_party/tensorflow-text
     third_party/tflite
-    third_party/tflite-support
     third_party/tflite/src/third_party/eigen3
     third_party/tflite/src/third_party/fft2d
     third_party/ukey2
@@ -346,10 +349,8 @@
     third_party/wuffs
     third_party/x11proto
     third_party/xcbproto
-    third_party/xdg-utils
     third_party/zlib/google
     third_party/zxcvbn-cpp
-    tools/grit/third_party/six
     url/third_party/mozilla
     v8/src/third_party/siphash
     v8/src/third_party/utf8-decoder

++++++ electron-13-blink-gcc-ambiguous-nodestructor.patch ++++++
--- /var/tmp/diff_new_pack.hODLA7/_old  2022-01-27 23:18:23.318388817 +0100
+++ /var/tmp/diff_new_pack.hODLA7/_new  2022-01-27 23:18:23.322388790 +0100
@@ -1,9 +1,9 @@
-Index: electron-13.1.4/media/blink/multibuffer_data_source.cc
+Index: 
electron-16.0.6/third_party/blink/renderer/platform/media/multi_buffer_data_source.cc
 ===================================================================
---- electron-13.1.4.orig/media/blink/multibuffer_data_source.cc        
2021-06-25 10:21:41.234607393 +0200
-+++ electron-13.1.4/media/blink/multibuffer_data_source.cc     2021-06-28 
15:52:42.017709873 +0200
-@@ -62,10 +62,10 @@ const int kUpdateBufferSizeFrequency = 3
- constexpr base::TimeDelta kSeekDelay = base::TimeDelta::FromMilliseconds(20);
+--- 
electron-16.0.6.orig/third_party/blink/renderer/platform/media/multi_buffer_data_source.cc
 2022-01-10 16:24:28.724461941 +0100
++++ 
electron-16.0.6/third_party/blink/renderer/platform/media/multi_buffer_data_source.cc
      2022-01-13 16:04:50.310112542 +0100
+@@ -63,10 +63,10 @@ const int kUpdateBufferSizeFrequency = 3
+ constexpr base::TimeDelta kSeekDelay = base::Milliseconds(20);
  
  std::vector<std::string>* GetStreamingSchemes() {
 -  static base::NoDestructor<std::vector<std::string>> streaming_schemes({

++++++ electron-13-fix-base-check-nomerge.patch ++++++
--- /var/tmp/diff_new_pack.hODLA7/_old  2022-01-27 23:18:23.334388707 +0100
+++ /var/tmp/diff_new_pack.hODLA7/_new  2022-01-27 23:18:23.334388707 +0100
@@ -1,8 +1,8 @@
-Index: electron-13.1.2/base/compiler_specific.h
+Index: electron-15.3.3/base/compiler_specific.h
 ===================================================================
---- electron-13.1.2.orig/base/compiler_specific.h      2021-06-19 
12:20:04.812383529 +0200
-+++ electron-13.1.2/base/compiler_specific.h   2021-06-20 16:25:23.249984109 
+0200
-@@ -340,7 +340,8 @@ inline constexpr bool AnalyzerAssumeTrue
+--- electron-15.3.3.orig/base/compiler_specific.h      2021-12-15 
12:00:50.016321177 +0100
++++ electron-15.3.3/base/compiler_specific.h   2021-12-15 13:09:17.144985381 
+0100
+@@ -365,7 +365,8 @@ inline constexpr bool AnalyzerAssumeTrue
  #endif  // defined(__clang_analyzer__)
  
  // Use nomerge attribute to disable optimization of merging multiple same 
calls.

++++++ electron-13-fix-sql-virtualcursor-type.patch ++++++
--- /var/tmp/diff_new_pack.hODLA7/_old  2022-01-27 23:18:23.346388624 +0100
+++ /var/tmp/diff_new_pack.hODLA7/_new  2022-01-27 23:18:23.350388596 +0100
@@ -20,11 +20,11 @@
  sql/recover_module/pager.h   |  5 +++--
  6 files changed, 47 insertions(+), 29 deletions(-)
 
-diff --git a/sql/recover_module/btree.cc b/sql/recover_module/btree.cc
-index 9ecaafe8a3..839318abf9 100644
---- a/sql/recover_module/btree.cc
-+++ b/sql/recover_module/btree.cc
-@@ -135,16 +135,25 @@ 
static_assert(std::is_trivially_destructible<LeafPageDecoder>::value,
+Index: electron-15.3.3/sql/recover_module/btree.cc
+===================================================================
+--- electron-15.3.3.orig/sql/recover_module/btree.cc   2021-12-15 
12:00:57.864361036 +0100
++++ electron-15.3.3/sql/recover_module/btree.cc        2021-12-15 
13:09:05.476916962 +0100
+@@ -136,16 +136,25 @@ static_assert(std::is_trivially_destruct
                "Move the destructor to the .cc file if it's non-trival");
  #endif  // !DCHECK_IS_ON()
  
@@ -56,11 +56,11 @@
  bool LeafPageDecoder::TryAdvance() {
    DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
    DCHECK(CanAdvance());
-diff --git a/sql/recover_module/btree.h b/sql/recover_module/btree.h
-index d76d076bf6..33114b01fa 100644
---- a/sql/recover_module/btree.h
-+++ b/sql/recover_module/btree.h
-@@ -102,7 +102,7 @@ class LeafPageDecoder {
+Index: electron-15.3.3/sql/recover_module/btree.h
+===================================================================
+--- electron-15.3.3.orig/sql/recover_module/btree.h    2021-12-15 
12:00:57.864361036 +0100
++++ electron-15.3.3/sql/recover_module/btree.h 2021-12-15 13:09:05.476916962 
+0100
+@@ -103,7 +103,7 @@ class LeafPageDecoder {
    //
    // |db_reader| must have been used to read an inner page of a table B-tree.
    // |db_reader| must outlive this instance.
@@ -69,7 +69,7 @@
    ~LeafPageDecoder() noexcept = default;
  
    LeafPageDecoder(const LeafPageDecoder&) = delete;
-@@ -150,6 +150,15 @@ class LeafPageDecoder {
+@@ -151,6 +151,15 @@ class LeafPageDecoder {
    // read as long as CanAdvance() returns true.
    bool TryAdvance();
  
@@ -85,7 +85,7 @@
    // True if the given reader may point to an inner page in a table B-tree.
    //
    // The last ReadPage() call on |db_reader| must have succeeded.
-@@ -163,14 +172,14 @@ class LeafPageDecoder {
+@@ -164,14 +173,14 @@ class LeafPageDecoder {
    static int ComputeCellCount(DatabasePageReader* db_reader);
  
    // The number of the B-tree page this reader is reading.
@@ -103,11 +103,11 @@
  
    // The reader's cursor state.
    //
-diff --git a/sql/recover_module/cursor.cc b/sql/recover_module/cursor.cc
-index 0029ff9295..42548bc4b5 100644
---- a/sql/recover_module/cursor.cc
-+++ b/sql/recover_module/cursor.cc
-@@ -26,7 +26,7 @@ VirtualCursor::~VirtualCursor() {
+Index: electron-15.3.3/sql/recover_module/cursor.cc
+===================================================================
+--- electron-15.3.3.orig/sql/recover_module/cursor.cc  2021-12-15 
12:00:57.864361036 +0100
++++ electron-15.3.3/sql/recover_module/cursor.cc       2021-12-15 
13:09:05.476916962 +0100
+@@ -28,7 +28,7 @@ VirtualCursor::~VirtualCursor() {
  int VirtualCursor::First() {
    DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
    inner_decoders_.clear();
@@ -116,7 +116,7 @@
  
    AppendPageDecoder(table_->root_page_id());
    return Next();
-@@ -36,18 +36,18 @@ int VirtualCursor::Next() {
+@@ -38,18 +38,18 @@ int VirtualCursor::Next() {
    DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
    record_reader_.Reset();
  
@@ -142,7 +142,7 @@
          continue;
        }
        if (!record_reader_.Initialize())
-@@ -99,13 +99,13 @@ int VirtualCursor::ReadColumn(int column_index,
+@@ -101,13 +101,13 @@ int VirtualCursor::ReadColumn(int column
  int64_t VirtualCursor::RowId() {
    DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
    DCHECK(record_reader_.IsInitialized());
@@ -159,7 +159,7 @@
        << __func__
        << " must only be called when the current path has no leaf decoder";
  
-@@ -113,7 +113,7 @@ void VirtualCursor::AppendPageDecoder(int page_id) {
+@@ -115,7 +115,7 @@ void VirtualCursor::AppendPageDecoder(in
      return;
  
    if (LeafPageDecoder::IsOnValidPage(&db_reader_)) {
@@ -168,10 +168,10 @@
      return;
    }
  
-diff --git a/sql/recover_module/cursor.h b/sql/recover_module/cursor.h
-index afcd6900e1..b15c31d425 100644
---- a/sql/recover_module/cursor.h
-+++ b/sql/recover_module/cursor.h
+Index: electron-15.3.3/sql/recover_module/cursor.h
+===================================================================
+--- electron-15.3.3.orig/sql/recover_module/cursor.h   2021-12-15 
12:00:57.864361036 +0100
++++ electron-15.3.3/sql/recover_module/cursor.h        2021-12-15 
13:09:05.476916962 +0100
 @@ -129,7 +129,7 @@ class VirtualCursor {
    std::vector<std::unique_ptr<InnerPageDecoder>> inner_decoders_;
  
@@ -181,11 +181,11 @@
  
    SEQUENCE_CHECKER(sequence_checker_);
  };
-diff --git a/sql/recover_module/pager.cc b/sql/recover_module/pager.cc
-index 58e75de270..5fe96204e5 100644
---- a/sql/recover_module/pager.cc
-+++ b/sql/recover_module/pager.cc
-@@ -23,8 +23,7 @@ static_assert(DatabasePageReader::kMaxPageId <= 
std::numeric_limits<int>::max(),
+Index: electron-15.3.3/sql/recover_module/pager.cc
+===================================================================
+--- electron-15.3.3.orig/sql/recover_module/pager.cc   2021-12-15 
12:00:57.864361036 +0100
++++ electron-15.3.3/sql/recover_module/pager.cc        2021-12-15 
13:09:05.476916962 +0100
+@@ -23,8 +23,7 @@ static_assert(DatabasePageReader::kMaxPa
                "ints are not appropriate for representing page IDs");
  
  DatabasePageReader::DatabasePageReader(VirtualTable* table)
@@ -195,7 +195,7 @@
    DCHECK(table != nullptr);
    DCHECK(IsValidPageSize(table->page_size()));
  }
-@@ -57,8 +56,8 @@ int DatabasePageReader::ReadPage(int page_id) {
+@@ -57,8 +56,8 @@ int DatabasePageReader::ReadPage(int pag
                      std::numeric_limits<int64_t>::max(),
                  "The |read_offset| computation above may overflow");
  
@@ -206,10 +206,10 @@
  
    // |page_id_| needs to be set to kInvalidPageId if the read failed.
    // Otherwise, future ReadPage() calls with the previous |page_id_| value
-diff --git a/sql/recover_module/pager.h b/sql/recover_module/pager.h
-index 0e388ddc3b..99314e30ff 100644
---- a/sql/recover_module/pager.h
-+++ b/sql/recover_module/pager.h
+Index: electron-15.3.3/sql/recover_module/pager.h
+===================================================================
+--- electron-15.3.3.orig/sql/recover_module/pager.h    2021-12-15 
12:00:57.864361036 +0100
++++ electron-15.3.3/sql/recover_module/pager.h 2021-12-15 13:09:05.476916962 
+0100
 @@ -5,6 +5,7 @@
  #ifndef SQL_RECOVER_MODULE_PAGER_H_
  #define SQL_RECOVER_MODULE_PAGER_H_
@@ -217,8 +217,8 @@
 +#include <array>
  #include <cstdint>
  #include <memory>
- 
-@@ -70,7 +71,7 @@ class DatabasePageReader {
+ #include <ostream>
+@@ -71,7 +72,7 @@ class DatabasePageReader {
      DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
      DCHECK_NE(page_id_, kInvalidPageId)
          << "Successful ReadPage() required before accessing pager state";
@@ -227,7 +227,7 @@
    }
  
    // The number of bytes in the page read by the last ReadPage() call.
-@@ -137,7 +138,7 @@ class DatabasePageReader {
+@@ -138,7 +139,7 @@ class DatabasePageReader {
    int page_id_ = kInvalidPageId;
    // Stores the bytes of the last page successfully read by ReadPage().
    // The content is undefined if the last call to ReadPage() did not succeed.

++++++ electron-13-fix-use-thin-lto.patch ++++++
--- /var/tmp/diff_new_pack.hODLA7/_old  2022-01-27 23:18:23.358388541 +0100
+++ /var/tmp/diff_new_pack.hODLA7/_new  2022-01-27 23:18:23.362388513 +0100
@@ -1,8 +1,8 @@
-Index: electron-13.1.2/build/config/compiler/compiler.gni
+Index: electron-16.0.6/build/config/compiler/compiler.gni
 ===================================================================
---- electron-13.1.2.orig/build/config/compiler/compiler.gni    2021-06-19 
12:20:04.936384156 +0200
-+++ electron-13.1.2/build/config/compiler/compiler.gni 2021-06-20 
15:30:45.946767664 +0200
-@@ -67,11 +67,11 @@ declare_args() {
+--- electron-16.0.6.orig/build/config/compiler/compiler.gni    2022-01-10 
16:06:45.853270221 +0100
++++ electron-16.0.6/build/config/compiler/compiler.gni 2022-01-13 
16:04:39.322052806 +0100
+@@ -71,11 +71,11 @@ declare_args() {
    # Use it by default on official-optimized android and Chrome OS builds, but
    # not ARC or linux-chromeos since it's been seen to not play nicely with
    # Chrome's clang. crbug.com/1033839

++++++ electron-16-std-vector-non-const.patch ++++++
Index: electron-16.0.7/chrome/browser/process_singleton.h
===================================================================
--- electron-16.0.7.orig/chrome/browser/process_singleton.h     2022-01-17 
09:05:43.956463209 +0100
+++ electron-16.0.7/chrome/browser/process_singleton.h  2022-01-17 
09:05:46.560477493 +0100
@@ -103,7 +103,7 @@ class ProcessSingleton {
   using NotificationCallback =
       base::RepeatingCallback<bool(const base::CommandLine& command_line,
                                    const base::FilePath& current_directory,
-                                   const std::vector<const uint8_t> 
additional_data)>;
+                                   const std::vector<uint8_t> 
additional_data)>;
 
 #if defined(OS_WIN)
   ProcessSingleton(const std::string& program_name,
Index: electron-16.0.7/chrome/browser/process_singleton_posix.cc
===================================================================
--- electron-16.0.7.orig/chrome/browser/process_singleton_posix.cc      
2022-01-17 09:05:43.956463209 +0100
+++ electron-16.0.7/chrome/browser/process_singleton_posix.cc   2022-01-17 
09:05:46.560477493 +0100
@@ -626,7 +626,7 @@ class ProcessSingleton::LinuxWatcher
   // |reader| is for sending back ACK message.
   void HandleMessage(const std::string& current_dir,
                      const std::vector<std::string>& argv,
-                     const std::vector<const uint8_t> additional_data,
+                     const std::vector<uint8_t> additional_data,
                      SocketReader* reader);
 
  private:
@@ -683,7 +683,7 @@ void ProcessSingleton::LinuxWatcher::Sta
 void ProcessSingleton::LinuxWatcher::HandleMessage(
     const std::string& current_dir,
     const std::vector<std::string>& argv,
-    const std::vector<const uint8_t> additional_data,
+    const std::vector<uint8_t> additional_data,
     SocketReader* reader) {
   DCHECK(ui_task_runner_->BelongsToCurrentThread());
   DCHECK(reader);
@@ -773,7 +773,7 @@ void ProcessSingleton::LinuxWatcher::Soc
   base::StringToSizeT(tokens[0], &num_args);
   std::vector<std::string> command_line(tokens.begin() + 1, tokens.begin() + 1 
+ num_args);
 
-  std::vector<const uint8_t> additional_data;
+  std::vector<uint8_t> additional_data;
   if (tokens.size() >= 3 + num_args) {
     size_t additional_data_size;
     base::StringToSizeT(tokens[1 + num_args], &additional_data_size);
@@ -782,7 +782,7 @@ void ProcessSingleton::LinuxWatcher::Soc
         std::string(1, kTokenDelimiter));
     const uint8_t* additional_data_bits =
         reinterpret_cast<const uint8_t*>(remaining_args.c_str());
-    additional_data = std::vector<const uint8_t>(
+    additional_data = std::vector<uint8_t>(
         additional_data_bits, additional_data_bits + additional_data_size);
   }
 
Index: electron-16.0.7/chrome/browser/process_singleton_win.cc
===================================================================
--- electron-16.0.7.orig/chrome/browser/process_singleton_win.cc        
2022-01-17 09:05:43.956463209 +0100
+++ electron-16.0.7/chrome/browser/process_singleton_win.cc     2022-01-17 
09:05:46.560477493 +0100
@@ -100,7 +100,7 @@ BOOL CALLBACK BrowserWindowEnumeration(H
 bool ParseCommandLine(const COPYDATASTRUCT* cds,
                       base::CommandLine* parsed_command_line,
                       base::FilePath* current_directory,
-                      std::vector<const uint8_t>* parsed_additional_data) {
+                      std::vector<uint8_t>* parsed_additional_data) {
   // We should have enough room for the shortest command (min_message_size)
   // and also be a multiple of wchar_t bytes. The shortest command
   // possible is L"START\0\0" (empty command line, current directory,
@@ -182,7 +182,7 @@ bool ParseCommandLine(const COPYDATASTRU
         msg.substr(fourth_null + 1, fifth_null - fourth_null);
     const uint8_t* additional_data_bytes =
         reinterpret_cast<const uint8_t*>(additional_data.c_str());
-    *parsed_additional_data = std::vector<const uint8_t>(additional_data_bytes,
+    *parsed_additional_data = std::vector<uint8_t>(additional_data_bytes,
         additional_data_bytes + additional_data_length);
 
     return true;
@@ -203,7 +203,7 @@ bool ProcessLaunchNotification(
   const COPYDATASTRUCT* cds = reinterpret_cast<COPYDATASTRUCT*>(lparam);
   base::CommandLine parsed_command_line(base::CommandLine::NO_PROGRAM);
   base::FilePath current_directory;
-  std::vector<const uint8_t> additional_data;
+  std::vector<uint8_t> additional_data;
   if (!ParseCommandLine(cds, &parsed_command_line, &current_directory, 
&additional_data)) {
     *result = TRUE;
     return true;
Index: electron-16.0.7/electron/shell/browser/api/electron_api_app.cc
===================================================================
--- electron-16.0.7.orig/electron/shell/browser/api/electron_api_app.cc 
2022-01-17 09:05:46.560477493 +0100
+++ electron-16.0.7/electron/shell/browser/api/electron_api_app.cc      
2022-01-17 15:27:37.616459355 +0100
@@ -517,10 +517,10 @@ bool NotificationCallbackWrapper(
     const base::RepeatingCallback<
         void(const base::CommandLine& command_line,
              const base::FilePath& current_directory,
-             const std::vector<const uint8_t> additional_data)>& callback,
+             const std::vector<uint8_t> additional_data)>& callback,
     const base::CommandLine& cmd,
     const base::FilePath& cwd,
-    const std::vector<const uint8_t> additional_data) {
+    const std::vector<uint8_t> additional_data) {
   // Make sure the callback is called after app gets ready.
   if (Browser::Get()->is_ready()) {
     callback.Run(cmd, cwd, std::move(additional_data));
@@ -1081,7 +1081,7 @@ std::string App::GetLocaleCountryCode()
 
 void App::OnSecondInstance(const base::CommandLine& cmd,
                            const base::FilePath& cwd,
-                           const std::vector<const uint8_t> additional_data) {
+                           const std::vector<uint8_t> additional_data) {
   v8::Isolate* isolate = JavascriptEnvironment::GetIsolate();
   v8::Locker locker(isolate);
   v8::HandleScope handle_scope(isolate);
Index: electron-16.0.7/electron/shell/browser/api/electron_api_app.h
===================================================================
--- electron-16.0.7.orig/electron/shell/browser/api/electron_api_app.h  
2022-01-15 15:50:12.473649228 +0100
+++ electron-16.0.7/electron/shell/browser/api/electron_api_app.h       
2022-01-17 17:04:38.020359701 +0100
@@ -190,7 +190,7 @@ class App : public ElectronBrowserClient
   std::string GetLocaleCountryCode();
   void OnSecondInstance(const base::CommandLine& cmd,
                         const base::FilePath& cwd,
-                        const std::vector<const uint8_t> additional_data);
+                        const std::vector<uint8_t> additional_data);
   bool HasSingleInstanceLock() const;
   bool RequestSingleInstanceLock(gin::Arguments* args);
   void ReleaseSingleInstanceLock();

++++++ electron-13.6.3.tar.xz -> electron-16.0.7.tar.xz ++++++
/work/SRC/openSUSE:Factory/nodejs-electron/electron-13.6.3.tar.xz 
/work/SRC/openSUSE:Factory/.nodejs-electron.new.1898/electron-16.0.7.tar.xz 
differ: char 15, line 1


++++++ gcc-enable-lto.patch ++++++
--- /var/tmp/diff_new_pack.hODLA7/_old  2022-01-27 23:18:23.430388043 +0100
+++ /var/tmp/diff_new_pack.hODLA7/_new  2022-01-27 23:18:23.430388043 +0100
@@ -1,7 +1,7 @@
-Index: electron-13.1.0/build/config/BUILDCONFIG.gn
+Index: electron-16.0.6/build/config/BUILDCONFIG.gn
 ===================================================================
---- electron-13.1.0.orig/build/config/BUILDCONFIG.gn   2021-06-18 
15:30:12.381771291 +0200
-+++ electron-13.1.0/build/config/BUILDCONFIG.gn        2021-06-18 
15:30:15.529790838 +0200
+--- electron-16.0.6.orig/build/config/BUILDCONFIG.gn   2022-01-10 
16:24:02.216280051 +0100
++++ electron-16.0.6/build/config/BUILDCONFIG.gn        2022-01-13 
16:02:40.677407750 +0100
 @@ -133,6 +133,8 @@ declare_args() {
    # separate flags.
    is_official_build = false
@@ -11,7 +11,7 @@
    # Set to true when compiling with the Clang compiler.
    is_clang = current_os != "linux" ||
               (current_cpu != "s390x" && current_cpu != "s390" &&
-@@ -342,6 +344,12 @@ default_compiler_configs = [
+@@ -343,6 +345,12 @@ default_compiler_configs = [
    "//electron/build/config:mas_build",
  ]
  
@@ -24,11 +24,11 @@
  if (is_win) {
    default_compiler_configs += [
      "//build/config/win:default_cfg_compiler",
-Index: electron-13.1.0/build/config/compiler/BUILD.gn
+Index: electron-16.0.6/build/config/compiler/BUILD.gn
 ===================================================================
---- electron-13.1.0.orig/build/config/compiler/BUILD.gn        2021-06-18 
15:30:12.381771291 +0200
-+++ electron-13.1.0/build/config/compiler/BUILD.gn     2021-06-18 
15:30:15.529790838 +0200
-@@ -2006,6 +2006,10 @@ if (is_win) {
+--- electron-16.0.6.orig/build/config/compiler/BUILD.gn        2022-01-13 
16:02:32.341363898 +0100
++++ electron-16.0.6/build/config/compiler/BUILD.gn     2022-01-13 
16:02:40.677407750 +0100
+@@ -1860,6 +1860,10 @@ if (is_win) {
    }
  }
  
@@ -39,10 +39,10 @@
  config("default_stack_frames") {
    if (is_posix || is_fuchsia) {
      if (enable_frame_pointers) {
-Index: electron-13.1.0/sandbox/linux/BUILD.gn
+Index: electron-16.0.6/sandbox/linux/BUILD.gn
 ===================================================================
---- electron-13.1.0.orig/sandbox/linux/BUILD.gn        2021-06-18 
15:30:12.381771291 +0200
-+++ electron-13.1.0/sandbox/linux/BUILD.gn     2021-06-18 15:30:15.529790838 
+0200
+--- electron-16.0.6.orig/sandbox/linux/BUILD.gn        2022-01-10 
16:06:52.905317231 +0100
++++ electron-16.0.6/sandbox/linux/BUILD.gn     2022-01-13 16:02:40.677407750 
+0100
 @@ -258,6 +258,9 @@ component("seccomp_bpf") {
      "//build:chromeos_buildflags",
      "//sandbox:sandbox_buildflags",

Reply via email to