We truncated the diff of some files because they were too big.
If you want to see the full diff for every file, click here.
Changes of Revision 18
chromium-ffmpeg-extra.changes
Changed
x
1
2
-------------------------------------------------------------------
3
+Sun Sep 19 19:41:03 UTC 2021 - Carsten Ziepke <kieltux@gmail.com>
4
+
5
+- Update to 93.0.4577.82
6
+ Branch of https://build.opensuse.org/project/show/network:chromium
7
+- Drop conditional build for libffmpeg, we want it here definitely
8
+
9
+-------------------------------------------------------------------
10
Tue Oct 16 05:18:00 UTC 2018 - avvissu@yandex.by
11
12
- Add chromium-old-glibc.patch
13
chromium-ffmpeg-extra.spec
Changed
201
1
2
#
3
# spec file for package chromium-ffmpeg-extra
4
#
5
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
6
+# Copyright (c) 2021 SUSE LLC
7
#
8
# All modifications and additions to the file contributed by third parties
9
# remain the property of their copyright owners, unless otherwise agreed
10
11
# license that conforms to the Open Source Definition (Version 1.9)
12
# published by the Open Source Initiative.
13
14
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
15
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
16
#
17
18
19
+%define rname chromium
20
+# bsc#1108175
21
+%define __provides_exclude ^lib.*\\.so.*$
22
+%if 0%{?suse_version} > 1500
23
+%bcond_without system_icu
24
+%bcond_with system_vpx
25
+%else
26
+%bcond_with system_icu
27
+%bcond_with system_vpx
28
+%endif
29
+%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150200
30
+%bcond_without system_harfbuzz
31
+%bcond_without pipewire
32
+%else
33
+%bcond_with system_harfbuzz
34
+%bcond_with pipewire
35
+%endif
36
+%ifarch %{arm} aarch64
37
+%bcond_with swiftshader
38
+%else
39
+%bcond_without swiftshader
40
+%endif
41
+%bcond_with lto
42
+%bcond_without clang
43
Name: chromium-ffmpeg-extra
44
-Version: 69.0.3497.100
45
+Version: 93.0.4577.82
46
Release: 0
47
Summary: Extra ffmpeg codecs for browsers based on Chromium
48
-License: GPL-2.0
49
-Group: Productivity/Networking/Web/Browsers
50
-URL: http://code.google.com/p/chromium/
51
-Source0: http://commondatastorage.googleapis.com/chromium-browser-official/chromium-%{version}.tar.xz
52
-Source1: BUILD.gn
53
-Patch0: fix_building_widevinecdm_with_chromium.patch
54
-Patch1: chromium-dma-buf.patch
55
-Patch2: chromium-non-void-return.patch
56
-Patch3: chromium-system-icu.patch
57
-Patch4: chromium-skia-system-fontconfig.patch
58
-Patch5: chromium-old-glibc.patch
59
-BuildRequires: ninja
60
+License: BSD-3-Clause AND LGPL-2.1-or-later
61
+URL: https://www.chromium.org/
62
+Source0: https://commondatastorage.googleapis.com/chromium-browser-official/%{rname}-%{version}.tar.xz
63
+Source1: README.SUSE
64
+Source2: https://github.com/google/highway/archive/refs/tags/0.12.2.tar.gz#/highway-0.12.2.tar.gz
65
+# Toolchain definitions
66
+Source30: master_preferences
67
+Source104: chromium-symbolic.svg
68
+# https://github.com/chromium/chromium/tree/%{version}/chrome/installer/linux/common/installer.include
69
+Source105: INSTALL.sh
70
+#
71
+Patch0: chromium-libusb_interrupt_event_handler.patch
72
+# PATCH-FIX-OPENSUSE Make the 1-click-install ymp file always download [bnc#836059]
73
+Patch1: exclude_ymp.patch
74
+# PATCH-FIX-OPENSUSE enables reading of the master preference
75
+Patch2: chromium-master-prefs-path.patch
76
+# PATCH-FIX-OPENSUSE fix_building_widevinecdm_with_chromium.patch - Enable WideVine plugin
77
+Patch3: fix_building_widevinecdm_with_chromium.patch
78
+Patch4: chromium-buildname.patch
79
+Patch5: chromium-system-libusb.patch
80
+Patch6: gcc-enable-lto.patch
81
+# Do not use unrar code, it is non-free
82
+Patch7: chromium-norar.patch
83
+# revert location on old GCC on 15.1, 15.2 gets it right tho
84
+Patch8: no-location-leap151.patch
85
+Patch9: system-libdrm.patch
86
+Patch10: chromium-disable-parallel-gold.patch
87
+Patch11: chromium-lp151-old-drm.patch
88
+# gentoo/fedora/arch patchset
89
+Patch12: chromium-78-protobuf-RepeatedPtrField-export.patch
90
+Patch13: chromium-80-QuicStreamSendBuffer-deleted-move-constructor.patch
91
+Patch15: chromium-91-compiler.patch
92
+Patch17: chromium-86-ImageMemoryBarrierData-init.patch
93
+Patch18: chromium-86-nearby-explicit.patch
94
+Patch19: chromium-86-nearby-include.patch
95
+Patch20: chromium-86-f_seal.patch
96
+Patch21: chromium-gcc11.patch
97
+Patch23: chromium-glibc-2.33.patch
98
+Patch25: chromium-90-fseal.patch
99
+Patch29: chromium-93-EnumTable-crash.patch
100
+Patch30: chromium-shim_headers.patch
101
+Patch31: chromium-89-missing-cstring-header.patch
102
+Patch36: chromium-90-ruy-include.patch
103
+Patch40: chromium-91-java-only-allowed-in-android-builds.patch
104
+Patch44: chromium-91-libyuv-aarch64.patch
105
+Patch46: chromium-91-sql-standard-layout-type.patch
106
+Patch49: chromium-freetype-2.11.patch
107
+Patch50: chromium-clang-nomerge.patch
108
+Patch51: chromium-glibc-2.34.patch
109
+Patch53: chromium-93-ContextSet-permissive.patch
110
+Patch54: chromium-93-ClassProperty-include.patch
111
+Patch55: chromium-93-BluetoothLowEnergyScanFilter-include.patch
112
+Patch56: chromium-93-HashPasswordManager-include.patch
113
+Patch57: chromium-93-pdfium-include.patch
114
+Patch58: chromium-93-DevToolsEmbedderMessageDispatcher-include.patch
115
+Patch59: chromium-93-FormForest-constexpr.patch
116
+Patch60: chromium-93-ScopedTestDialogAutoConfirm-include.patch
117
+Patch61: chromium-93-InkDropHost-crash.patch
118
+Patch62: chromium-93-ffmpeg-4.4.patch
119
+# Google seem not too keen on merging this but GPU accel is quite important
120
+# https://chromium-review.googlesource.com/c/chromium/src/+/532294
121
+# https://github.com/saiarcot895/chromium-ubuntu-build/tree/master/debian/patches
122
+# Recreated from scratch to be smaller and use system the orginal switches
123
+# (default on) compared to the PR
124
+Patch100: chromium-vaapi.patch
125
+Patch101: chromium-86-fix-vaapi-on-intel.patch
126
+# PATCH-FIX-SUSE: allow prop codecs to be set with chromium branding
127
+Patch102: chromium-prop-codecs.patch
128
+BuildRequires: SDL-devel
129
+BuildRequires: bison
130
+BuildRequires: cups-devel
131
+BuildRequires: desktop-file-utils
132
+BuildRequires: elfutils
133
+BuildRequires: fdupes
134
+BuildRequires: flex
135
+BuildRequires: gn >= 0.1807
136
+BuildRequires: gperf
137
+BuildRequires: hicolor-icon-theme
138
+# Java used during build
139
+BuildRequires: java-openjdk-headless
140
+BuildRequires: libcap-devel
141
+BuildRequires: libdc1394
142
+BuildRequires: libgcrypt-devel
143
+BuildRequires: libgsm-devel
144
+BuildRequires: libjpeg-devel >= 8.1
145
+BuildRequires: libpng-devel
146
+BuildRequires: memory-constraints
147
+BuildRequires: nasm
148
+BuildRequires: ncurses-devel
149
+BuildRequires: ninja >= 1.7.2
150
+BuildRequires: nodejs >= 8.0
151
+BuildRequires: pam-devel
152
BuildRequires: pkgconfig
153
-BuildRequires: python-xml
154
+BuildRequires: python
155
+BuildRequires: python3
156
+BuildRequires: python3-setuptools
157
+BuildRequires: snappy-devel
158
+BuildRequires: update-desktop-files
159
+BuildRequires: util-linux
160
+BuildRequires: wdiff
161
+BuildRequires: perl(Switch)
162
+BuildRequires: pkgconfig(alsa)
163
+BuildRequires: pkgconfig(bzip2)
164
+BuildRequires: pkgconfig(cairo) >= 1.6
165
+BuildRequires: pkgconfig(dbus-1)
166
+BuildRequires: pkgconfig(dirac) >= 1.0.0
167
BuildRequires: pkgconfig(dri)
168
+BuildRequires: pkgconfig(expat)
169
+BuildRequires: pkgconfig(flac++)
170
+BuildRequires: pkgconfig(freetype2)
171
+BuildRequires: pkgconfig(gbm)
172
+BuildRequires: pkgconfig(glib-2.0)
173
BuildRequires: pkgconfig(gtk+-2.0)
174
BuildRequires: pkgconfig(gtk+-3.0)
175
+BuildRequires: pkgconfig(hunspell)
176
+BuildRequires: pkgconfig(imlib2)
177
+BuildRequires: pkgconfig(jack)
178
+BuildRequires: pkgconfig(kadm-client)
179
+BuildRequires: pkgconfig(kdb)
180
+BuildRequires: pkgconfig(krb5)
181
+BuildRequires: pkgconfig(libavcodec)
182
+BuildRequires: pkgconfig(libavfilter)
183
+BuildRequires: pkgconfig(libavformat) >= 58
184
+BuildRequires: pkgconfig(libavutil)
185
+BuildRequires: pkgconfig(libcrypto)
186
+BuildRequires: pkgconfig(libcurl)
187
+BuildRequires: pkgconfig(libdc1394-2)
188
+BuildRequires: pkgconfig(libdrm)
189
+BuildRequires: pkgconfig(libelf)
190
+BuildRequires: pkgconfig(libevent)
191
BuildRequires: pkgconfig(libexif)
192
BuildRequires: pkgconfig(libffi)
193
BuildRequires: pkgconfig(libpci)
194
BuildRequires: pkgconfig(libpulse)
195
-BuildRequires: pkgconfig(nss)
196
-BuildRequires: pkgconfig(python)
197
-BuildRequires: pkgconfig(uuid)
198
+BuildRequires: pkgconfig(libssl)
199
+BuildRequires: pkgconfig(libudev)
200
+BuildRequires: pkgconfig(libusb-1.0)
201
chromium-78-protobuf-RepeatedPtrField-export.patch
Added
15
1
2
+diff --git a/third_party/protobuf/src/google/protobuf/repeated_field.h b/third_party/protobuf/src/google/protobuf/repeated_field.h
3
+index b5b193c..4434854 100644
4
+--- a/third_party/protobuf/src/google/protobuf/repeated_field.h
5
++++ b/third_party/protobuf/src/google/protobuf/repeated_field.h
6
+@@ -804,7 +804,7 @@ class StringTypeHandler {
7
+ // RepeatedPtrField is like RepeatedField, but used for repeated strings or
8
+ // Messages.
9
+ template <typename Element>
10
+-class RepeatedPtrField final : private internal::RepeatedPtrFieldBase {
11
++class PROTOBUF_EXPORT RepeatedPtrField final : private internal::RepeatedPtrFieldBase {
12
+ public:
13
+ RepeatedPtrField();
14
+ explicit RepeatedPtrField(Arena* arena);
15
chromium-80-QuicStreamSendBuffer-deleted-move-constructor.patch
Added
32
1
2
+From 00f47df999c9b19e80fdc01db0ae9ca1b6a12b3a Mon Sep 17 00:00:00 2001
3
+From: vasilvv <vasilvv@google.com>
4
+Date: Wed, 03 Apr 2019 13:58:53 -0700
5
+Subject: [PATCH] GCC: do not delete move constructor of QuicStreamSendBuffer
6
+
7
+QuicStreamSendBuffer constructor is implicitely required in the
8
+initialization of the vector of substreams in QuicCryptoStream.
9
+Though clang apparently ignores that, GCC fails to build.
10
+
11
+BUG=chromium:819294
12
+
13
+Originally submitted by José Dapena Paz <jose.dapena@lge.com> at https://quiche-review.googlesource.com/c/quiche/+/2420
14
+
15
+PiperOrigin-RevId: 241800134
16
+Change-Id: I4e3c97d6e5895d85340e8c1b740e6196d9104066
17
+---
18
+
19
+diff --git a/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h b/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h
20
+index e34514b..74e9d0d 100644
21
+--- a/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h
22
++++ b/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h
23
+@@ -62,7 +62,7 @@
24
+ public:
25
+ explicit QuicStreamSendBuffer(QuicBufferAllocator* allocator);
26
+ QuicStreamSendBuffer(const QuicStreamSendBuffer& other) = delete;
27
+- QuicStreamSendBuffer(QuicStreamSendBuffer&& other) = delete;
28
++ QuicStreamSendBuffer(QuicStreamSendBuffer&& other) = default;
29
+ ~QuicStreamSendBuffer();
30
+
31
+ // Save |data_length| of data starts at |iov_offset| in |iov| to send buffer.
32
chromium-86-ImageMemoryBarrierData-init.patch
Added
33
1
2
+From 2879a6ba43b65c33e3c02432b4ae7a7462d24096 Mon Sep 17 00:00:00 2001
3
+From: Stephan Hartmann <stha09@googlemail.com>
4
+Date: Fri, 28 Aug 2020 07:23:29 +0000
5
+Subject: [PATCH] GCC: fix ImageMemoryBarrierData initialization
6
+
7
+GCC can't convert constant string to char[40]. Use const char * instead.
8
+Otherwise fails like this:
9
+
10
+src/libANGLE/renderer/vulkan/vk_helpers.cpp:121:1: error: could not convert
11
+'...' from '<brace-enclosed initializer list>' to
12
+'const angle::PackedEnumMap<rx::vk::ImageLayout, rx::vk::{anonymous}::ImageMemoryBarrierData>'
13
+---
14
+ third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp | 2 +-
15
+ 1 file changed, 1 insertion(+), 1 deletion(-)
16
+
17
+diff --git a/third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp b/third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp
18
+index af957d7..7fe82ae 100644
19
+--- a/third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp
20
++++ b/third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp
21
+@@ -73,7 +73,7 @@ enum BarrierType
22
+
23
+ struct ImageMemoryBarrierData
24
+ {
25
+- char name[44];
26
++ const char *name;
27
+
28
+ // The Vk layout corresponding to the ImageLayout key.
29
+ VkImageLayout layout;
30
+--
31
+2.26.2
32
+
33
chromium-86-f_seal.patch
Added
25
1
2
+Index: chromium-86.0.4240.75/sandbox/policy/linux/bpf_gpu_policy_linux.cc
3
+===================================================================
4
+--- chromium-86.0.4240.75.orig/sandbox/policy/linux/bpf_gpu_policy_linux.cc
5
++++ chromium-86.0.4240.75/sandbox/policy/linux/bpf_gpu_policy_linux.cc
6
+@@ -6,6 +6,18 @@
7
+
8
+ #include <errno.h>
9
+ #include <fcntl.h>
10
++#ifndef F_SEAL_SEAL
11
++# define F_SEAL_SEAL 0x0001
12
++#endif
13
++#ifndef F_SEAL_SHRINK
14
++# define F_SEAL_SHRINK 0x0002
15
++#endif
16
++#ifndef F_SEAL_GROW
17
++# define F_SEAL_GROW 0x0004
18
++#endif
19
++#ifndef F_ADD_SEALS
20
++# define F_ADD_SEALS 1033
21
++#endif
22
+ #include <sys/socket.h>
23
+ #include <sys/types.h>
24
+ #include <unistd.h>
25
chromium-86-fix-vaapi-on-intel.patch
Added
38
1
2
+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
3
+--- chromium-86.0.4240.75/media/gpu/vaapi/vaapi_video_decode_accelerator.cc.vaapi-intel-fix 2020-10-07 12:38:47.000000000 -0400
4
++++ chromium-86.0.4240.75/media/gpu/vaapi/vaapi_video_decode_accelerator.cc 2020-10-14 16:20:46.938556042 -0400
5
+@@ -58,6 +58,7 @@ unsigned int GetVaFormatForVideoCodecPro
6
+ return VA_RT_FORMAT_YUV420;
7
+ }
8
+
9
++#if defined(OS_ANDROID) || BUILDFLAG(IS_CHROMEOS_ASH)
10
+ // Returns true if the CPU is an Intel Gemini Lake or later (including Kaby
11
+ // Lake) Cpu platform id's are referenced from the following file in kernel
12
+ // source arch/x86/include/asm/intel-family.h
13
+@@ -70,6 +71,7 @@ bool IsGeminiLakeOrLater() {
14
+ cpuid.model() >= kGeminiLakeModelId;
15
+ return is_geminilake_or_later;
16
+ }
17
++#endif
18
+
19
+ } // namespace
20
+
21
+@@ -1214,6 +1216,8 @@ VaapiVideoDecodeAccelerator::DecideBuffe
22
+ if (output_mode_ == VideoDecodeAccelerator::Config::OutputMode::IMPORT)
23
+ return BufferAllocationMode::kNormal;
24
+
25
++#if defined(OS_ANDROID) || BUILDFLAG(IS_CHROMEOS_ASH)
26
++ // Move this to chromeOs only as it is causing problem in some intel linux drivers
27
+ // On Gemini Lake, Kaby Lake and later we can pass to libva the client's
28
+ // PictureBuffers to decode onto, which skips the use of the Vpp unit and its
29
+ // associated format reconciliation copy, avoiding all internal buffer
30
+@@ -1229,6 +1233,7 @@ VaapiVideoDecodeAccelerator::DecideBuffe
31
+ num_extra_pics_ = 3;
32
+ return BufferAllocationMode::kNone;
33
+ }
34
++#endif
35
+
36
+ // For H.264 on older devices, another +1 is experimentally needed for
37
+ // high-to-high resolution changes.
38
chromium-86-nearby-explicit.patch
Added
27
1
2
+From 849e5c6b3a8746d9205102bd3df4e140cead405a Mon Sep 17 00:00:00 2001
3
+From: Stephan Hartmann <stha09@googlemail.com>
4
+Date: Sat, 18 Jul 2020 15:11:13 +0000
5
+Subject: [PATCH] GCC: remove explicit from AtomicReference constructor
6
+
7
+---
8
+ .../nearby/src/cpp/platform/public/atomic_reference.h | 2 +-
9
+ 1 file changed, 1 insertion(+), 1 deletion(-)
10
+
11
+diff --git a/third_party/nearby/src/cpp/platform/public/atomic_reference.h b/third_party/nearby/src/cpp/platform/public/atomic_reference.h
12
+index 5742724..bbb8c01 100644
13
+--- a/third_party/nearby/src/cpp/platform/public/atomic_reference.h
14
++++ b/third_party/nearby/src/cpp/platform/public/atomic_reference.h
15
+@@ -37,7 +37,7 @@ class AtomicReference<T, std::enable_if_t<sizeof(T) <= sizeof(std::uint32_t) &&
16
+ final {
17
+ public:
18
+ using Platform = api::ImplementationPlatform;
19
+- explicit AtomicReference(T value)
20
++ AtomicReference(T value)
21
+ : impl_(Platform::CreateAtomicUint32(static_cast<std::uint32_t>(value))) {
22
+ }
23
+ ~AtomicReference() = default;
24
+--
25
+2.26.2
26
+
27
chromium-86-nearby-include.patch
Added
26
1
2
+From a5b2ee9dd7dfb186e26ec6c0c06c2ae1a9d27195 Mon Sep 17 00:00:00 2001
3
+From: Stephan Hartmann <stha09@googlemail.com>
4
+Date: Sat, 18 Jul 2020 14:15:50 +0000
5
+Subject: [PATCH] IWYU: memcpy is defined in cstring
6
+
7
+---
8
+ third_party/nearby/src/cpp/platform/base/byte_array.h | 1 +
9
+ 1 file changed, 1 insertion(+)
10
+
11
+diff --git a/third_party/nearby/src/cpp/platform/base/byte_array.h b/third_party/nearby/src/cpp/platform/base/byte_array.h
12
+index ee5d0eb..4b1d79b 100644
13
+--- a/third_party/nearby/src/cpp/platform/base/byte_array.h
14
++++ b/third_party/nearby/src/cpp/platform/base/byte_array.h
15
+@@ -18,6 +18,7 @@
16
+ #include <algorithm>
17
+ #include <array>
18
+ #include <cstdint>
19
++#include <cstring>
20
+ #include <string>
21
+ #include <type_traits>
22
+ #include <utility>
23
+--
24
+2.26.2
25
+
26
chromium-89-missing-cstring-header.patch
Added
36
1
2
+diff -up chromium-89.0.4389.72/third_party/webrtc/audio/utility/channel_mixer.cc.missing-cstring chromium-89.0.4389.72/third_party/webrtc/audio/utility/channel_mixer.cc
3
+--- chromium-89.0.4389.72/third_party/webrtc/audio/utility/channel_mixer.cc.missing-cstring 2021-03-02 12:48:16.000000000 -0500
4
++++ chromium-89.0.4389.72/third_party/webrtc/audio/utility/channel_mixer.cc 2021-03-04 13:31:42.894817353 -0500
5
+@@ -8,6 +8,8 @@
6
+ * be found in the AUTHORS file in the root of the source tree.
7
+ */
8
+
9
++#include <cstring>
10
++
11
+ #include "audio/utility/channel_mixer.h"
12
+
13
+ #include "audio/utility/channel_mixing_matrix.h"
14
+diff -up chromium-89.0.4389.72/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.missing-cstring chromium-89.0.4389.72/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc
15
+--- chromium-89.0.4389.72/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.missing-cstring 2021-03-04 13:31:42.895817359 -0500
16
++++ chromium-89.0.4389.72/third_party/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc 2021-03-04 13:45:27.795162431 -0500
17
+@@ -23,6 +23,7 @@
18
+ #include <sys/mman.h>
19
+ #include <sys/syscall.h>
20
+
21
++#include <cstring>
22
+ #include <memory>
23
+ #include <utility>
24
+
25
+diff -up chromium-89.0.4389.72/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-cstring chromium-89.0.4389.72/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc
26
+--- chromium-89.0.4389.72/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc.missing-cstring 2021-03-02 12:48:17.000000000 -0500
27
++++ chromium-89.0.4389.72/third_party/webrtc/modules/video_coding/utility/ivf_file_reader.cc 2021-03-04 13:31:42.895817359 -0500
28
+@@ -10,6 +10,7 @@
29
+
30
+ #include "modules/video_coding/utility/ivf_file_reader.h"
31
+
32
++#include <cstring>
33
+ #include <string>
34
+ #include <vector>
35
+
36
chromium-90-fseal.patch
Added
50
1
2
+--- chromium-90.0.4430.85/mojo/core/channel_linux.cc.xx 2021-04-26 10:31:10.188705842 +0200
3
++++ chromium-90.0.4430.85/mojo/core/channel_linux.cc 2021-04-26 11:23:26.997161282 +0200
4
+@@ -5,6 +5,21 @@
5
+ #include "mojo/core/channel_linux.h"
6
+
7
+ #include <fcntl.h>
8
++#ifndef F_SEAL_SEAL
9
++# define F_SEAL_SEAL 0x0001
10
++#endif
11
++#ifndef F_SEAL_SHRINK
12
++# define F_SEAL_SHRINK 0x0002
13
++#endif
14
++#ifndef F_SEAL_GROW
15
++# define F_SEAL_GROW 0x0004
16
++#endif
17
++#ifndef F_ADD_SEALS
18
++# define F_ADD_SEALS 1033
19
++#endif
20
++#ifndef F_GET_SEALS
21
++# define F_GET_SEALS 1034
22
++#endif
23
+ #include <linux/futex.h>
24
+ #include <linux/memfd.h>
25
+ #include <sys/eventfd.h>
26
+--- chromium-90.0.4430.85/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc.xx 2021-04-26 16:39:18.387482941 +0200
27
++++ chromium-90.0.4430.85/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc 2021-04-26 16:40:10.866754337 +0200
28
+@@ -6,6 +6,21 @@
29
+
30
+ #include <errno.h>
31
+ #include <fcntl.h>
32
++#ifndef F_SEAL_SEAL
33
++# define F_SEAL_SEAL 0x0001
34
++#endif
35
++#ifndef F_SEAL_SHRINK
36
++# define F_SEAL_SHRINK 0x0002
37
++#endif
38
++#ifndef F_SEAL_GROW
39
++# define F_SEAL_GROW 0x0004
40
++#endif
41
++#ifndef F_ADD_SEALS
42
++# define F_ADD_SEALS 1033
43
++#endif
44
++#ifndef F_GET_SEALS
45
++# define F_GET_SEALS 1034
46
++#endif
47
+ #include <linux/net.h>
48
+ #include <sched.h>
49
+ #include <signal.h>
50
chromium-90-ruy-include.patch
Added
26
1
2
+From 714092f336bb14d2fcc27396ec323b3d843bb962 Mon Sep 17 00:00:00 2001
3
+From: Stephan Hartmann <stha09@googlemail.com>
4
+Date: Thu, 4 Mar 2021 15:05:46 +0000
5
+Subject: [PATCH] IWYU: include limits for std::numeric_limits
6
+
7
+---
8
+ third_party/ruy/src/ruy/block_map.cc | 1 +
9
+ 1 file changed, 1 insertion(+)
10
+
11
+diff --git a/third_party/ruy/src/ruy/block_map.cc b/third_party/ruy/src/ruy/block_map.cc
12
+index 44e5039..a7a7559 100644
13
+--- a/third_party/ruy/src/ruy/block_map.cc
14
++++ b/third_party/ruy/src/ruy/block_map.cc
15
+@@ -17,6 +17,7 @@ limitations under the License.
16
+
17
+ #include <algorithm>
18
+ #include <cstdint>
19
++#include <limits>
20
+
21
+ #ifdef RUY_MAKEBLOCKMAP_DEBUG
22
+ #include <cstdio>
23
+--
24
+2.26.2
25
+
26
chromium-91-compiler.patch
Added
167
1
2
+From f4d0b0eb899005b4b8b6388e1d8bb82cc0018fc8 Mon Sep 17 00:00:00 2001
3
+From: Mike Gilbert <floppym@gentoo.org>
4
+Date: Wed, 7 Apr 2021 08:50:04 +0000
5
+Subject: [PATCH] Disable various compiler configs
6
+
7
+---
8
+ build/config/compiler/BUILD.gn | 59 ++++++++++------------------------
9
+ 1 file changed, 17 insertions(+), 42 deletions(-)
10
+
11
+diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
12
+index 72ea590..539672d 100644
13
+--- a/build/config/compiler/BUILD.gn
14
++++ b/build/config/compiler/BUILD.gn
15
+@@ -273,8 +273,6 @@ config("compiler") {
16
+
17
+ configs += [
18
+ # See the definitions below.
19
+- ":clang_revision",
20
+- ":compiler_cpu_abi",
21
+ ":compiler_codegen",
22
+ ":compiler_deterministic",
23
+ ]
24
+@@ -518,24 +516,6 @@ config("compiler") {
25
+ ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
26
+ }
27
+
28
+- if (is_clang && !is_nacl && !use_xcode_clang) {
29
+- cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
30
+-
31
+- # TODO(hans): Remove this once Clang generates better optimized debug info
32
+- # by default. https://crbug.com/765793
33
+- cflags += [
34
+- "-mllvm",
35
+- "-instcombine-lower-dbg-declare=0",
36
+- ]
37
+- if (!is_debug && use_thin_lto && is_a_target_toolchain) {
38
+- if (is_win) {
39
+- ldflags += [ "-mllvm:-instcombine-lower-dbg-declare=0" ]
40
+- } else {
41
+- ldflags += [ "-Wl,-mllvm,-instcombine-lower-dbg-declare=0" ]
42
+- }
43
+- }
44
+- }
45
+-
46
+ # C11/C++11 compiler flags setup.
47
+ # ---------------------------
48
+ if (is_linux || is_chromeos || is_android || (is_nacl && is_clang) ||
49
+@@ -1643,7 +1623,7 @@ config("chromium_code") {
50
+ defines = [ "_HAS_NODISCARD" ]
51
+ }
52
+ } else {
53
+- cflags = [ "-Wall" ]
54
++ cflags = []
55
+ if (treat_warnings_as_errors) {
56
+ cflags += [ "-Werror" ]
57
+
58
+@@ -1652,10 +1632,6 @@ config("chromium_code") {
59
+ # well.
60
+ ldflags = [ "-Werror" ]
61
+ }
62
+- if (is_clang) {
63
+- # Enable extra warnings for chromium_code when we control the compiler.
64
+- cflags += [ "-Wextra" ]
65
+- }
66
+
67
+ # In Chromium code, we define __STDC_foo_MACROS in order to get the
68
+ # C99 macros on Mac and Linux.
69
+@@ -1664,15 +1640,6 @@ config("chromium_code") {
70
+ "__STDC_FORMAT_MACROS",
71
+ ]
72
+
73
+- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
74
+- current_cpu != "s390" && current_cpu != "ppc64" &&
75
+- current_cpu != "mips" && current_cpu != "mips64") {
76
+- # Non-chromium code is not guaranteed to compile cleanly with
77
+- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
78
+- # disabled, so only do that for Release build.
79
+- defines += [ "_FORTIFY_SOURCE=2" ]
80
+- }
81
+-
82
+ if (is_mac) {
83
+ cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
84
+ cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
85
+@@ -2068,7 +2035,8 @@ config("default_stack_frames") {
86
+ }
87
+
88
+ # Default "optimization on" config.
89
+-config("optimize") {
90
++config("optimize") { }
91
++config("xoptimize") {
92
+ if (is_win) {
93
+ if (chrome_pgo_phase != 2) {
94
+ # Favor size over speed, /O1 must be before the common flags.
95
+@@ -2103,7 +2071,8 @@ config("optimize") {
96
+ }
97
+
98
+ # Turn off optimizations.
99
+-config("no_optimize") {
100
++config("no_optimize") { }
101
++config("xno_optimize") {
102
+ if (is_win) {
103
+ cflags = [
104
+ "/Od", # Disable optimization.
105
+@@ -2143,7 +2112,8 @@ config("no_optimize") {
106
+ # Turns up the optimization level. On Windows, this implies whole program
107
+ # optimization and link-time code generation which is very expensive and should
108
+ # be used sparingly.
109
+-config("optimize_max") {
110
++config("optimize_max") { }
111
++config("xoptimize_max") {
112
+ if (is_nacl && is_nacl_irt) {
113
+ # The NaCl IRT is a special case and always wants its own config.
114
+ # Various components do:
115
+@@ -2175,7 +2145,8 @@ config("optimize_max") {
116
+ #
117
+ # TODO(crbug.com/621335) - rework how all of these configs are related
118
+ # so that we don't need this disclaimer.
119
+-config("optimize_speed") {
120
++config("optimize_speed") { }
121
++config("xoptimize_speed") {
122
+ if (is_nacl && is_nacl_irt) {
123
+ # The NaCl IRT is a special case and always wants its own config.
124
+ # Various components do:
125
+@@ -2200,7 +2171,8 @@ config("optimize_speed") {
126
+ }
127
+ }
128
+
129
+-config("optimize_fuzzing") {
130
++config("optimize_fuzzing") { }
131
++config("xoptimize_fuzzing") {
132
+ cflags = [ "-O1" ] + common_optimize_on_cflags
133
+ ldflags = common_optimize_on_ldflags
134
+ visibility = [ ":default_optimization" ]
135
+@@ -2319,7 +2291,8 @@ config("win_pdbaltpath") {
136
+ }
137
+
138
+ # Full symbols.
139
+-config("symbols") {
140
++config("symbols") { }
141
++config("xsymbols") {
142
+ if (is_win) {
143
+ if (is_clang) {
144
+ cflags = [ "/Z7" ] # Debug information in the .obj files.
145
+@@ -2422,7 +2395,8 @@ config("symbols") {
146
+ # Minimal symbols.
147
+ # This config guarantees to hold symbol for stack trace which are shown to user
148
+ # when crash happens in unittests running on buildbot.
149
+-config("minimal_symbols") {
150
++config("minimal_symbols") { }
151
++config("xminimal_symbols") {
152
+ if (is_win) {
153
+ # Functions, files, and line tables only.
154
+ cflags = []
155
+@@ -2481,7 +2455,8 @@ config("minimal_symbols") {
156
+ # This configuration contains function names only. That is, the compiler is
157
+ # told to not generate debug information and the linker then just puts function
158
+ # names in the final debug information.
159
+-config("no_symbols") {
160
++config("no_symbols") { }
161
++config("xno_symbols") {
162
+ if (is_win) {
163
+ ldflags = [ "/DEBUG" ]
164
+
165
+--
166
+2.26.3
167
chromium-91-java-only-allowed-in-android-builds.patch
Added
18
1
2
+References: https://bugs.chromium.org/p/chromium/issues/detail?id=1192875
3
+
4
+Index: chromium-91.0.4472.57/third_party/closure_compiler/compiler.py
5
+===================================================================
6
+--- chromium-91.0.4472.57.orig/third_party/closure_compiler/compiler.py
7
++++ chromium-91.0.4472.57/third_party/closure_compiler/compiler.py
8
+@@ -13,8 +13,7 @@ import subprocess
9
+
10
+
11
+ _CURRENT_DIR = os.path.join(os.path.dirname(__file__))
12
+-_JAVA_PATH = os.path.join(_CURRENT_DIR, "..", "jdk", "current", "bin", "java")
13
+-assert os.path.isfile(_JAVA_PATH), "java only allowed in android builds"
14
++_JAVA_PATH = "java"
15
+
16
+ class Compiler(object):
17
+ """Runs the Closure compiler on given source files to typecheck them
18
chromium-91-libyuv-aarch64.patch
Added
93
1
2
+diff --git a/third_party/libyuv/source/row_neon64.cc b/third_party/libyuv/source/row_neon64.cc
3
+index 350c964..2aab413 100644
4
+--- a/third_party/libyuv/source/row_neon64.cc
5
++++ b/third_party/libyuv/source/row_neon64.cc
6
+@@ -1835,7 +1835,7 @@ void ARGBToAB64Row_NEON(const uint8_t* src_argb,
7
+ : "+r"(src_argb), // %0
8
+ "+r"(dst_ab64), // %1
9
+ "+r"(width) // %2
10
+- : "m"(kShuffleARGBToABGR) // %3
11
++ : "Q"(kShuffleARGBToABGR) // %3
12
+ : "cc", "memory", "v0", "v1", "v2", "v3", "v4");
13
+ }
14
+
15
+@@ -1859,7 +1859,7 @@ void AR64ToARGBRow_NEON(const uint16_t* src_ar64,
16
+ : "+r"(src_ar64), // %0
17
+ "+r"(dst_argb), // %1
18
+ "+r"(width) // %2
19
+- : "m"(kShuffleAR64ToARGB) // %3
20
++ : "Q"(kShuffleAR64ToARGB) // %3
21
+ : "cc", "memory", "v0", "v1", "v2", "v3", "v4");
22
+ }
23
+
24
+@@ -1883,7 +1883,7 @@ void AB64ToARGBRow_NEON(const uint16_t* src_ab64,
25
+ : "+r"(src_ab64), // %0
26
+ "+r"(dst_argb), // %1
27
+ "+r"(width) // %2
28
+- : "m"(kShuffleAB64ToARGB) // %3
29
++ : "Q"(kShuffleAB64ToARGB) // %3
30
+ : "cc", "memory", "v0", "v1", "v2", "v3", "v4");
31
+ }
32
+
33
+diff --git a/third_party/libyuv/source/scale_neon64.cc b/third_party/libyuv/source/scale_neon64.cc
34
+index 8656fec..9f9636e 100644
35
+--- a/third_party/libyuv/source/scale_neon64.cc
36
++++ b/third_party/libyuv/source/scale_neon64.cc
37
+@@ -601,8 +601,8 @@ void ScaleRowUp2_Bilinear_NEON(const uint8_t* src_ptr,
38
+ "umlal v4.8h, v1.8b, v31.8b \n" // 3*near+far (2, odd)
39
+ "umlal v5.8h, v0.8b, v31.8b \n" // 3*near+far (2, even)
40
+
41
+- "mov v0.8h, v4.8h \n"
42
+- "mov v1.8h, v5.8h \n"
43
++ "mov v0.16b, v4.16b \n"
44
++ "mov v1.16b, v5.16b \n"
45
+ "mla v4.8h, v2.8h, v30.8h \n" // 9 3 3 1 (1, odd)
46
+ "mla v5.8h, v3.8h, v30.8h \n" // 9 3 3 1 (1, even)
47
+ "mla v2.8h, v0.8h, v30.8h \n" // 9 3 3 1 (2, odd)
48
+@@ -642,7 +642,7 @@ void ScaleRowUp2_Linear_12_NEON(const uint16_t* src_ptr,
49
+ "ld1 {v1.8h}, [%1], #16 \n" // 12345678 (16b)
50
+ "prfm pldl1keep, [%0, 448] \n" // prefetch 7 lines ahead
51
+
52
+- "mov v2.8h, v0.8h \n"
53
++ "mov v2.16b, v0.16b \n"
54
+ "mla v0.8h, v1.8h, v31.8h \n" // 3*near+far (odd)
55
+ "mla v1.8h, v2.8h, v31.8h \n" // 3*near+far (even)
56
+
57
+@@ -679,7 +679,7 @@ void ScaleRowUp2_Bilinear_12_NEON(const uint16_t* src_ptr,
58
+ "ld1 {v3.8h}, [%2], #16 \n" // 12345678 (16b)
59
+ "prfm pldl1keep, [%0, 448] \n" // prefetch 7 lines ahead
60
+
61
+- "mov v0.8h, v2.8h \n"
62
++ "mov v0.16b, v2.16b \n"
63
+ "mla v2.8h, v3.8h, v31.8h \n" // 3*near+far (odd)
64
+ "mla v3.8h, v0.8h, v31.8h \n" // 3*near+far (even)
65
+
66
+@@ -687,12 +687,12 @@ void ScaleRowUp2_Bilinear_12_NEON(const uint16_t* src_ptr,
67
+ "ld1 {v5.8h}, [%3], #16 \n" // 12345678 (16b)
68
+ "prfm pldl1keep, [%1, 448] \n" // prefetch 7 lines ahead
69
+
70
+- "mov v0.8h, v4.8h \n"
71
++ "mov v0.16b, v4.16b \n"
72
+ "mla v4.8h, v5.8h, v31.8h \n" // 3*near+far (odd)
73
+ "mla v5.8h, v0.8h, v31.8h \n" // 3*near+far (even)
74
+
75
+- "mov v0.8h, v4.8h \n"
76
+- "mov v1.8h, v5.8h \n"
77
++ "mov v0.16b, v4.16b \n"
78
++ "mov v1.16b, v5.16b \n"
79
+ "mla v4.8h, v2.8h, v31.8h \n" // 9 3 3 1 (1, odd)
80
+ "mla v5.8h, v3.8h, v31.8h \n" // 9 3 3 1 (1, even)
81
+ "mla v2.8h, v0.8h, v31.8h \n" // 9 3 3 1 (2, odd)
82
+@@ -887,8 +887,8 @@ void ScaleUVRowUp2_Bilinear_NEON(const uint8_t* src_ptr,
83
+ "umlal v4.8h, v1.8b, v31.8b \n" // 3*near+far (2, odd)
84
+ "umlal v5.8h, v0.8b, v31.8b \n" // 3*near+far (2, even)
85
+
86
+- "mov v0.8h, v4.8h \n"
87
+- "mov v1.8h, v5.8h \n"
88
++ "mov v0.16b, v4.16b \n"
89
++ "mov v1.16b, v5.16b \n"
90
+ "mla v4.8h, v2.8h, v30.8h \n" // 9 3 3 1 (1, odd)
91
+ "mla v5.8h, v3.8h, v30.8h \n" // 9 3 3 1 (1, even)
92
+ "mla v2.8h, v0.8h, v30.8h \n" // 9 3 3 1 (2, odd)
93
chromium-91-sql-standard-layout-type.patch
Added
201
1
2
+From 80368f8ba7a8bab13440463a254888311efe3986 Mon Sep 17 00:00:00 2001
3
+From: Stephan Hartmann <stha09@googlemail.com>
4
+Date: Tue, 4 May 2021 15:00:19 +0000
5
+Subject: [PATCH] sql: make VirtualCursor standard layout type
6
+
7
+sql::recover::VirtualCursor needs to be a standard layout type, but
8
+has members of type std::unique_ptr. However, std::unique_ptr is not
9
+guaranteed to be standard layout. Compiling with clang combined with
10
+gcc-11 libstdc++ fails because of this. Replace std::unique_ptr with
11
+raw pointers.
12
+
13
+Bug: 1189788
14
+Change-Id: Ia6dc388cc5ef1c0f2afc75f8ca45b9f12687ca9c
15
+---
16
+ sql/recover_module/btree.cc | 21 +++++++++++++++------
17
+ sql/recover_module/btree.h | 17 +++++++++++++----
18
+ sql/recover_module/cursor.cc | 24 ++++++++++++------------
19
+ sql/recover_module/cursor.h | 2 +-
20
+ sql/recover_module/pager.cc | 7 +++----
21
+ sql/recover_module/pager.h | 5 +++--
22
+ 6 files changed, 47 insertions(+), 29 deletions(-)
23
+
24
+diff --git a/sql/recover_module/btree.cc b/sql/recover_module/btree.cc
25
+index 9ecaafe8a3..839318abf9 100644
26
+--- a/sql/recover_module/btree.cc
27
++++ b/sql/recover_module/btree.cc
28
+@@ -135,16 +135,25 @@ static_assert(std::is_trivially_destructible<LeafPageDecoder>::value,
29
+ "Move the destructor to the .cc file if it's non-trival");
30
+ #endif // !DCHECK_IS_ON()
31
+
32
+-LeafPageDecoder::LeafPageDecoder(DatabasePageReader* db_reader) noexcept
33
+- : page_id_(db_reader->page_id()),
34
+- db_reader_(db_reader),
35
+- cell_count_(ComputeCellCount(db_reader)),
36
+- next_read_index_(0),
37
+- last_record_size_(0) {
38
++void LeafPageDecoder::Initialize(DatabasePageReader* db_reader) {
39
++ DCHECK(db_reader);
40
+ DCHECK(IsOnValidPage(db_reader));
41
++ page_id_ = db_reader->page_id();
42
++ db_reader_ = db_reader;
43
++ cell_count_ = ComputeCellCount(db_reader);
44
++ next_read_index_ = 0;
45
++ last_record_size_ = 0;
46
+ DCHECK(DatabasePageReader::IsValidPageId(page_id_));
47
+ }
48
+
49
++void LeafPageDecoder::Reset() {
50
++ db_reader_ = nullptr;
51
++ page_id_ = 0;
52
++ cell_count_ = 0;
53
++ next_read_index_ = 0;
54
++ last_record_size_ = 0;
55
++}
56
++
57
+ bool LeafPageDecoder::TryAdvance() {
58
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
59
+ DCHECK(CanAdvance());
60
+diff --git a/sql/recover_module/btree.h b/sql/recover_module/btree.h
61
+index d76d076bf6..33114b01fa 100644
62
+--- a/sql/recover_module/btree.h
63
++++ b/sql/recover_module/btree.h
64
+@@ -102,7 +102,7 @@ class LeafPageDecoder {
65
+ //
66
+ // |db_reader| must have been used to read an inner page of a table B-tree.
67
+ // |db_reader| must outlive this instance.
68
+- explicit LeafPageDecoder(DatabasePageReader* db_reader) noexcept;
69
++ explicit LeafPageDecoder() noexcept = default;
70
+ ~LeafPageDecoder() noexcept = default;
71
+
72
+ LeafPageDecoder(const LeafPageDecoder&) = delete;
73
+@@ -150,6 +150,15 @@ class LeafPageDecoder {
74
+ // read as long as CanAdvance() returns true.
75
+ bool TryAdvance();
76
+
77
++ // Initialize with DatabasePageReader
78
++ void Initialize(DatabasePageReader* db_reader);
79
++
80
++ // Reset internal DatabasePageReader
81
++ void Reset();
82
++
83
++ // True if DatabasePageReader is valid
84
++ bool IsValid() { return (db_reader_ != nullptr); }
85
++
86
+ // True if the given reader may point to an inner page in a table B-tree.
87
+ //
88
+ // The last ReadPage() call on |db_reader| must have succeeded.
89
+@@ -163,14 +172,14 @@ class LeafPageDecoder {
90
+ static int ComputeCellCount(DatabasePageReader* db_reader);
91
+
92
+ // The number of the B-tree page this reader is reading.
93
+- const int64_t page_id_;
94
++ int64_t page_id_;
95
+ // Used to read the tree page.
96
+ //
97
+ // Raw pointer usage is acceptable because this instance's owner is expected
98
+ // to ensure that the DatabasePageReader outlives this.
99
+- DatabasePageReader* const db_reader_;
100
++ DatabasePageReader* db_reader_;
101
+ // Caches the ComputeCellCount() value for this reader's page.
102
+- const int cell_count_ = ComputeCellCount(db_reader_);
103
++ int cell_count_;
104
+
105
+ // The reader's cursor state.
106
+ //
107
+diff --git a/sql/recover_module/cursor.cc b/sql/recover_module/cursor.cc
108
+index 0029ff9295..42548bc4b5 100644
109
+--- a/sql/recover_module/cursor.cc
110
++++ b/sql/recover_module/cursor.cc
111
+@@ -26,7 +26,7 @@ VirtualCursor::~VirtualCursor() {
112
+ int VirtualCursor::First() {
113
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
114
+ inner_decoders_.clear();
115
+- leaf_decoder_ = nullptr;
116
++ leaf_decoder_.Reset();
117
+
118
+ AppendPageDecoder(table_->root_page_id());
119
+ return Next();
120
+@@ -36,18 +36,18 @@ int VirtualCursor::Next() {
121
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
122
+ record_reader_.Reset();
123
+
124
+- while (!inner_decoders_.empty() || leaf_decoder_.get()) {
125
+- if (leaf_decoder_.get()) {
126
+- if (!leaf_decoder_->CanAdvance()) {
127
++ while (!inner_decoders_.empty() || leaf_decoder_.IsValid()) {
128
++ if (leaf_decoder_.IsValid()) {
129
++ if (!leaf_decoder_.CanAdvance()) {
130
+ // The leaf has been exhausted. Remove it from the DFS stack.
131
+- leaf_decoder_ = nullptr;
132
++ leaf_decoder_.Reset();
133
+ continue;
134
+ }
135
+- if (!leaf_decoder_->TryAdvance())
136
++ if (!leaf_decoder_.TryAdvance())
137
+ continue;
138
+
139
+- if (!payload_reader_.Initialize(leaf_decoder_->last_record_size(),
140
+- leaf_decoder_->last_record_offset())) {
141
++ if (!payload_reader_.Initialize(leaf_decoder_.last_record_size(),
142
++ leaf_decoder_.last_record_offset())) {
143
+ continue;
144
+ }
145
+ if (!record_reader_.Initialize())
146
+@@ -99,13 +99,13 @@ int VirtualCursor::ReadColumn(int column_index,
147
+ int64_t VirtualCursor::RowId() {
148
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
149
+ DCHECK(record_reader_.IsInitialized());
150
+- DCHECK(leaf_decoder_.get());
151
+- return leaf_decoder_->last_record_rowid();
152
++ DCHECK(leaf_decoder_.IsValid());
153
++ return leaf_decoder_.last_record_rowid();
154
+ }
155
+
156
+ void VirtualCursor::AppendPageDecoder(int page_id) {
157
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
158
+- DCHECK(leaf_decoder_.get() == nullptr)
159
++ DCHECK(!leaf_decoder_.IsValid())
160
+ << __func__
161
+ << " must only be called when the current path has no leaf decoder";
162
+
163
+@@ -113,7 +113,7 @@ void VirtualCursor::AppendPageDecoder(int page_id) {
164
+ return;
165
+
166
+ if (LeafPageDecoder::IsOnValidPage(&db_reader_)) {
167
+- leaf_decoder_ = std::make_unique<LeafPageDecoder>(&db_reader_);
168
++ leaf_decoder_.Initialize(&db_reader_);
169
+ return;
170
+ }
171
+
172
+diff --git a/sql/recover_module/cursor.h b/sql/recover_module/cursor.h
173
+index afcd6900e1..b15c31d425 100644
174
+--- a/sql/recover_module/cursor.h
175
++++ b/sql/recover_module/cursor.h
176
+@@ -129,7 +129,7 @@ class VirtualCursor {
177
+ std::vector<std::unique_ptr<InnerPageDecoder>> inner_decoders_;
178
+
179
+ // Decodes the leaf page containing records.
180
+- std::unique_ptr<LeafPageDecoder> leaf_decoder_;
181
++ LeafPageDecoder leaf_decoder_;
182
+
183
+ SEQUENCE_CHECKER(sequence_checker_);
184
+ };
185
+diff --git a/sql/recover_module/pager.cc b/sql/recover_module/pager.cc
186
+index 58e75de270..5fe96204e5 100644
187
+--- a/sql/recover_module/pager.cc
188
++++ b/sql/recover_module/pager.cc
189
+@@ -23,8 +23,7 @@ static_assert(DatabasePageReader::kMaxPageId <= std::numeric_limits<int>::max(),
190
+ "ints are not appropriate for representing page IDs");
191
+
192
+ DatabasePageReader::DatabasePageReader(VirtualTable* table)
193
+- : page_data_(std::make_unique<uint8_t[]>(table->page_size())),
194
+- table_(table) {
195
++ : page_data_(), table_(table) {
196
+ DCHECK(table != nullptr);
197
+ DCHECK(IsValidPageSize(table->page_size()));
198
+ }
199
+@@ -57,8 +56,8 @@ int DatabasePageReader::ReadPage(int page_id) {
200
+ std::numeric_limits<int64_t>::max(),
201
chromium-93-BluetoothLowEnergyScanFilter-include.patch
Added
32
1
2
+From 2f5514051210388bfcff605570d33f08cfa7bcaa Mon Sep 17 00:00:00 2001
3
+From: Jose Dapena Paz <jdapena@igalia.com>
4
+Date: Wed, 21 Jul 2021 08:34:58 +0000
5
+Subject: [PATCH] IWYU: usage of unique_ptr requires including <memory> in bluetooth low energy scan filter.
6
+
7
+Fix build because of missing include:
8
+../../device/bluetooth/bluetooth_low_energy_scan_filter.h:57:15: error: ‘unique_ptr’ in namespace ‘std’ does not name a template type
9
+ 57 | static std::unique_ptr<BluetoothLowEnergyScanFilter> Create(
10
+ | ^~~~~~~~~~
11
+
12
+Bug: 819294
13
+Change-Id: I347953a083f1bcdf744fd86e1a73954c6f86b32e
14
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3041155
15
+Reviewed-by: Reilly Grant <reillyg@chromium.org>
16
+Commit-Queue: José Dapena Paz <jdapena@igalia.com>
17
+Cr-Commit-Position: refs/heads/master@{#903819}
18
+---
19
+
20
+diff --git a/device/bluetooth/bluetooth_low_energy_scan_filter.h b/device/bluetooth/bluetooth_low_energy_scan_filter.h
21
+index a0436c1..7ae606c 100644
22
+--- a/device/bluetooth/bluetooth_low_energy_scan_filter.h
23
++++ b/device/bluetooth/bluetooth_low_energy_scan_filter.h
24
+@@ -7,6 +7,7 @@
25
+
26
+ #include <stddef.h>
27
+ #include <stdint.h>
28
++#include <memory>
29
+ #include <vector>
30
+
31
+ #include "base/time/time.h"
32
chromium-93-ClassProperty-include.patch
Added
32
1
2
+From 8ae99ee447cf5f0160ea4ae978cdf37f5dcecd1e Mon Sep 17 00:00:00 2001
3
+From: Jose Dapena Paz <jdapena@igalia.com>
4
+Date: Wed, 21 Jul 2021 08:36:20 +0000
5
+Subject: [PATCH] IWYU: missing memory include for unique_ptr usage in class_property.h
6
+
7
+Fix GCC build breakage because of missing inclide:
8
+./../ui/base/class_property.h:120:58: error: ‘std::unique_ptr’ has not been declared
9
+ 120 | T* SetProperty(const ClassProperty<T*>* property, std::unique_ptr<T> value);
10
+ | ^~~~~~~~~~
11
+
12
+Bug: 819294
13
+Change-Id: I46b921876702b8d44674689bbb5acdc107db21e5
14
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3041030
15
+Reviewed-by: Peter Boström <pbos@chromium.org>
16
+Commit-Queue: José Dapena Paz <jdapena@igalia.com>
17
+Cr-Commit-Position: refs/heads/master@{#903820}
18
+---
19
+
20
+diff --git a/ui/base/class_property.h b/ui/base/class_property.h
21
+index f7b2f55..88b4938 100644
22
+--- a/ui/base/class_property.h
23
++++ b/ui/base/class_property.h
24
+@@ -8,6 +8,7 @@
25
+ #include <stdint.h>
26
+
27
+ #include <map>
28
++#include <memory>
29
+ #include <set>
30
+ #include <type_traits>
31
+
32
chromium-93-ContextSet-permissive.patch
Added
49
1
2
+From 7108f83c8ad1bad4072e4f32da3db6d59cf51400 Mon Sep 17 00:00:00 2001
3
+From: Ivan Murashov <ivan.murashov@lge.com>
4
+Date: Tue, 20 Jul 2021 13:16:44 +0300
5
+Subject: [PATCH] GCC: Remove double declaration of ContextSet
6
+
7
+After the CL
8
+https://chromium-review.googlesource.com/c/angle/angle/+/2965780
9
+the build with GCC failed with error:
10
+/third_party/angle/src/libANGLE/Display.h:325:37: error: declaration of
11
+'typedef class std::__1::set<gl::Context*> egl::Display::ContextSet'
12
+changes meaning of 'ContextSet' [-fpermissive]
13
+/third_party/angle/src/libANGLE/Display.h:75:7: note: 'ContextSet'
14
+declared here as 'using ContextSet = class std::__1::set<gl::Context*>'
15
+
16
+To fix the error the double declaration of ContextSet is removed.
17
+
18
+Bug: angleproject:5878, chromium:819294
19
+Change-Id: Id9e52061af53ea18dd5d13b960daaa67a14f61ca
20
+Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3038804
21
+Reviewed-by: Jamie Madill <jmadill@chromium.org>
22
+Commit-Queue: Jamie Madill <jmadill@chromium.org>
23
+---
24
+
25
+diff --git a/third_party/angle/CONTRIBUTORS b/third_party/angle/CONTRIBUTORS
26
+index 887ddc2..94b1b4d 100644
27
+--- a/third_party/angle/CONTRIBUTORS
28
++++ b/third_party/angle/CONTRIBUTORS
29
+@@ -154,6 +154,7 @@
30
+
31
+ LG Electronics, Inc.
32
+ Jani Hautakangas
33
++ Ivan Murashov
34
+
35
+ IBM Inc.
36
+ Junliang Yan
37
+diff --git a/third_party/angle/src/libANGLE/Display.h b/third_party/angle/src/libANGLE/Display.h
38
+index f33123b..f0c0910 100644
39
+--- a/third_party/angle/src/libANGLE/Display.h
40
++++ b/third_party/angle/src/libANGLE/Display.h
41
+@@ -322,7 +322,6 @@
42
+
43
+ ConfigSet mConfigSet;
44
+
45
+- typedef std::set<gl::Context *> ContextSet;
46
+ ContextSet mContextSet;
47
+
48
+ typedef std::set<Image *> ImageSet;
49
chromium-93-DevToolsEmbedderMessageDispatcher-include.patch
Added
26
1
2
+From 409859ad9ba763a4267fb3457df7cd8eb0b7387b Mon Sep 17 00:00:00 2001
3
+From: Stephan Hartmann <stha09@googlemail.com>
4
+Date: Sun, 25 Jul 2021 19:43:45 +0000
5
+Subject: [PATCH] IWYU: add vector for std::vector
6
+
7
+---
8
+ chrome/browser/devtools/devtools_embedder_message_dispatcher.h | 1 +
9
+ 1 file changed, 1 insertion(+)
10
+
11
+diff --git a/chrome/browser/devtools/devtools_embedder_message_dispatcher.h b/chrome/browser/devtools/devtools_embedder_message_dispatcher.h
12
+index 12f8500..4007112 100644
13
+--- a/chrome/browser/devtools/devtools_embedder_message_dispatcher.h
14
++++ b/chrome/browser/devtools/devtools_embedder_message_dispatcher.h
15
+@@ -8,6 +8,7 @@
16
+ #include <map>
17
+ #include <memory>
18
+ #include <string>
19
++#include <vector>
20
+
21
+ #include "base/callback.h"
22
+ #include "ui/gfx/geometry/insets.h"
23
+--
24
+2.31.1
25
+
26
chromium-93-EnumTable-crash.patch
Added
81
1
2
+diff --git a/components/cast_channel/enum_table.h b/components/cast_channel/enum_table.h
3
+index a63ae86..83ada65 100644
4
+--- a/components/cast_channel/enum_table.h
5
++++ b/components/cast_channel/enum_table.h
6
+@@ -8,6 +8,7 @@
7
+ #include <cstdint>
8
+ #include <cstring>
9
+ #include <ostream>
10
++#include <vector>
11
+
12
+ #include "base/check_op.h"
13
+ #include "base/macros.h"
14
+@@ -213,7 +214,7 @@ class
15
+
16
+ template <typename E>
17
+ friend class EnumTable;
18
+- DISALLOW_COPY_AND_ASSIGN(GenericEnumTableEntry);
19
++ DISALLOW_ASSIGN(GenericEnumTableEntry);
20
+ };
21
+
22
+ // Yes, these constructors really needs to be inlined. Even though they look
23
+@@ -251,8 +252,7 @@ class EnumTable {
24
+ // Constructor for regular entries.
25
+ constexpr Entry(E value, base::StringPiece str)
26
+ : GenericEnumTableEntry(static_cast<int32_t>(value), str) {}
27
+-
28
+- DISALLOW_COPY_AND_ASSIGN(Entry);
29
++ DISALLOW_ASSIGN(Entry);
30
+ };
31
+
32
+ static_assert(sizeof(E) <= sizeof(int32_t),
33
+@@ -307,15 +307,14 @@ class EnumTable {
34
+ if (is_sorted_) {
35
+ const std::size_t index = static_cast<std::size_t>(value);
36
+ if (ANALYZER_ASSUME_TRUE(index < data_.size())) {
37
+- const auto& entry = data_.begin()[index];
38
++ const auto& entry = data_[index];
39
+ if (ANALYZER_ASSUME_TRUE(entry.has_str()))
40
+ return entry.str();
41
+ }
42
+ return absl::nullopt;
43
+ }
44
+ return GenericEnumTableEntry::FindByValue(
45
+- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
46
+- data_.size(), static_cast<int32_t>(value));
47
++ &data_[0], data_.size(), static_cast<int32_t>(value));
48
+ }
49
+
50
+ // This overload of GetString is designed for cases where the argument is a
51
+@@ -343,8 +342,7 @@ class EnumTable {
52
+ // enum value directly.
53
+ absl::optional<E> GetEnum(base::StringPiece str) const {
54
+ auto* entry = GenericEnumTableEntry::FindByString(
55
+- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
56
+- data_.size(), str);
57
++ &data_[0], data_.size(), str);
58
+ return entry ? static_cast<E>(entry->value) : absl::optional<E>();
59
+ }
60
+
61
+@@ -359,7 +357,7 @@ class EnumTable {
62
+ // Align the data on a cache line boundary.
63
+ alignas(64)
64
+ #endif
65
+- std::initializer_list<Entry> data_;
66
++ const std::vector<Entry> data_;
67
+ bool is_sorted_;
68
+
69
+ constexpr EnumTable(std::initializer_list<Entry> data, bool is_sorted)
70
+@@ -371,8 +369,8 @@ class EnumTable {
71
+
72
+ for (std::size_t i = 0; i < data.size(); i++) {
73
+ for (std::size_t j = i + 1; j < data.size(); j++) {
74
+- const Entry& ei = data.begin()[i];
75
+- const Entry& ej = data.begin()[j];
76
++ const Entry& ei = data[i];
77
++ const Entry& ej = data[j];
78
+ DCHECK(ei.value != ej.value)
79
+ << "Found duplicate enum values at indices " << i << " and " << j;
80
+ DCHECK(!(ei.has_str() && ej.has_str() && ei.str() == ej.str()))
81
chromium-93-FormForest-constexpr.patch
Added
51
1
2
+From 802150d7be94e5317b257df545d55ce5b007ae65 Mon Sep 17 00:00:00 2001
3
+From: Jose Dapena Paz <jdapena@igalia.com>
4
+Date: Tue, 20 Jul 2021 18:50:11 +0000
5
+Subject: [PATCH] libstdc++: do not use unique_ptr bool() operator in a constexpr in form_forest.h
6
+
7
+Fix build breakage in GCC, because of calling non constexpr functions from a
8
+constexpr function. In this case, libstdc++ unique_ptr bool() operator is not
9
+constexpr, so it cannot be used inside CompareByFrameToken.
10
+
11
+An example of build breakage caused by this:
12
+ ../../components/autofill/content/browser/form_forest.h:157:21: error: call to non-‘constexpr’ function ‘std::unique_ptr<_Tp, _Dp>::operator bool() const [with _Tp = autofill::internal::FormForest::FrameData; _Dp = std::default_delete<autofill::internal::FormForest::FrameData>]’
13
+ 157 | return f && g ? f->frame_token < g->frame_token : f.get() < g.get();
14
+ | ^
15
+
16
+Bug: 957519
17
+Change-Id: I3c49559084fe58886a03520729873b7c4ac89bbf
18
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3041050
19
+Commit-Queue: Dominic Battré <battre@chromium.org>
20
+Reviewed-by: Dominic Battré <battre@chromium.org>
21
+Cr-Commit-Position: refs/heads/master@{#903595}
22
+---
23
+
24
+diff --git a/components/autofill/content/browser/form_forest.h b/components/autofill/content/browser/form_forest.h
25
+index c89a8eb..f414ab8 100644
26
+--- a/components/autofill/content/browser/form_forest.h
27
++++ b/components/autofill/content/browser/form_forest.h
28
+@@ -152,16 +152,16 @@
29
+ // used by FrameData sets.
30
+ struct CompareByFrameToken {
31
+ using is_transparent = void;
32
+- constexpr bool operator()(const std::unique_ptr<FrameData>& f,
33
+- const std::unique_ptr<FrameData>& g) const {
34
++ bool operator()(const std::unique_ptr<FrameData>& f,
35
++ const std::unique_ptr<FrameData>& g) const {
36
+ return f && g ? f->frame_token < g->frame_token : f.get() < g.get();
37
+ }
38
+- constexpr bool operator()(const std::unique_ptr<FrameData>& f,
39
+- const LocalFrameToken& g) const {
40
++ bool operator()(const std::unique_ptr<FrameData>& f,
41
++ const LocalFrameToken& g) const {
42
+ return f ? f->frame_token < g : true;
43
+ }
44
+- constexpr bool operator()(const LocalFrameToken& f,
45
+- const std::unique_ptr<FrameData>& g) const {
46
++ bool operator()(const LocalFrameToken& f,
47
++ const std::unique_ptr<FrameData>& g) const {
48
+ return g ? f < g->frame_token : false;
49
+ }
50
+ };
51
chromium-93-HashPasswordManager-include.patch
Added
32
1
2
+From 17d0e3dfcd0690df0e7b212fedcb95402f16935d Mon Sep 17 00:00:00 2001
3
+From: Jose Dapena Paz <jdapena@igalia.com>
4
+Date: Fri, 23 Jul 2021 10:17:49 +0000
5
+Subject: [PATCH] IWYU: missing include for using std::vector in hash password manager.
6
+
7
+Fix build breakage:
8
+../../components/password_manager/core/browser/hash_password_manager.h:44:8: error: ‘vector’ in namespace ‘std’ does not name a template type
9
+ 44 | std::vector<PasswordHashData> RetrieveAllPasswordHashes();
10
+ | ^~~~~~
11
+
12
+Bug: 819294
13
+Change-Id: I8c8a4ec3972eedb87a312c5ec56adf4a21b1b2a2
14
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3041046
15
+Commit-Queue: Vasilii Sukhanov <vasilii@chromium.org>
16
+Reviewed-by: Vasilii Sukhanov <vasilii@chromium.org>
17
+Cr-Commit-Position: refs/heads/master@{#904696}
18
+---
19
+
20
+diff --git a/components/password_manager/core/browser/hash_password_manager.h b/components/password_manager/core/browser/hash_password_manager.h
21
+index c762c5a..85e656ed 100644
22
+--- a/components/password_manager/core/browser/hash_password_manager.h
23
++++ b/components/password_manager/core/browser/hash_password_manager.h
24
+@@ -6,6 +6,7 @@
25
+ #define COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_HASH_PASSWORD_MANAGER_H_
26
+
27
+ #include <string>
28
++#include <vector>
29
+
30
+ #include "base/callback.h"
31
+ #include "base/callback_list.h"
32
chromium-93-InkDropHost-crash.patch
Added
27
1
2
+diff --git a/ui/views/animation/ink_drop_host_view.h b/ui/views/animation/ink_drop_host_view.h
3
+index bd0975b..e5df288 100644
4
+--- a/ui/views/animation/ink_drop_host_view.h
5
++++ b/ui/views/animation/ink_drop_host_view.h
6
+@@ -238,6 +238,11 @@ class VIEWS_EXPORT InkDropHost {
7
+ // Used to observe View and inform the InkDrop of host-transform changes.
8
+ ViewLayerTransformObserver host_view_transform_observer_;
9
+
10
++ // Declared before |ink_drop_|, because InkDropImpl may call
11
++ // RemoveInkDropLayer on partly destructed InkDropHost. In
12
++ // that case |ink_drop_mask_| must be still valid.
13
++ std::unique_ptr<views::InkDropMask> ink_drop_mask_;
14
++
15
+ // Should not be accessed directly. Use GetInkDrop() instead.
16
+ std::unique_ptr<InkDrop> ink_drop_;
17
+
18
+@@ -261,8 +266,6 @@ class VIEWS_EXPORT InkDropHost {
19
+ int ink_drop_small_corner_radius_ = 2;
20
+ int ink_drop_large_corner_radius_ = 4;
21
+
22
+- std::unique_ptr<views::InkDropMask> ink_drop_mask_;
23
+-
24
+ base::RepeatingCallback<std::unique_ptr<InkDrop>()> create_ink_drop_callback_;
25
+ base::RepeatingCallback<std::unique_ptr<InkDropRipple>()>
26
+ create_ink_drop_ripple_callback_;
27
chromium-93-ScopedTestDialogAutoConfirm-include.patch
Added
26
1
2
+From 92fc089d50fc81b9903cd0573c95749e41081474 Mon Sep 17 00:00:00 2001
3
+From: Stephan Hartmann <stha09@googlemail.com>
4
+Date: Sun, 25 Jul 2021 21:38:26 +0000
5
+Subject: [PATCH] IWYU: add cstring for std::strcpy
6
+
7
+---
8
+ extensions/browser/extension_dialog_auto_confirm.cc | 1 +
9
+ 1 file changed, 1 insertion(+)
10
+
11
+diff --git a/extensions/browser/extension_dialog_auto_confirm.cc b/extensions/browser/extension_dialog_auto_confirm.cc
12
+index adb4ac3..be8b161 100644
13
+--- a/extensions/browser/extension_dialog_auto_confirm.cc
14
++++ b/extensions/browser/extension_dialog_auto_confirm.cc
15
+@@ -4,6 +4,7 @@
16
+
17
+ #include "extensions/browser/extension_dialog_auto_confirm.h"
18
+
19
++#include <cstring>
20
+ #include <utility>
21
+
22
+ #include "base/check.h"
23
+--
24
+2.31.1
25
+
26
chromium-93-ffmpeg-4.4.patch
Added
87
1
2
+From: 52c3e9c0f140a8742034e107fb0f371c0d73bf1d Mon Sep 17 00:00:00 2001
3
+From: =?UTF-8?q?Marek=20Beh=C3=BAn?= <kabel@kernel.org>
4
+Date: Sun, 12 Sep 2021 04:20:11 +0200
5
+Subject: [PATCH] chromium-93: fix building with system-ffmpeg
6
+MIME-Version: 1.0
7
+Content-Type: text/plain; charset=UTF-8
8
+Content-Transfer-Encoding: 8bit
9
+
10
+The version of ffmpeg bundled in Chromium changed ABI a little, which
11
+affected the code in that the type of the last parameter of
12
+av_packet_get_side_data() is now size_t instead of int.
13
+
14
+This causes Chromium to fail to build with system-ffmpeg if the system
15
+ffmpeg's version does not yet have this ABI change.
16
+
17
+Fix the code to be able to compile with older ffmpeg as well.
18
+
19
+Signed-off-by: Marek Behún <kabel@kernel.org>
20
+---
21
+ media/filters/audio_decoder_unittest.cc | 4 ++++
22
+ media/filters/ffmpeg_demuxer.cc | 16 ++++++++++++++++
23
+ 2 files changed, 20 insertions(+)
24
+
25
+diff --git a/media/filters/audio_decoder_unittest.cc b/media/filters/audio_decoder_unittest.cc
26
+--- a/media/filters/audio_decoder_unittest.cc
27
++++ b/media/filters/audio_decoder_unittest.cc
28
+@@ -109,7 +109,11 @@ void SetDiscardPadding(AVPacket* packet,
29
+ }
30
+
31
+ // If the timestamp is positive, try to use FFmpeg's discard data.
32
++#if LIBAVUTIL_VERSION_MAJOR < 57
33
++ int skip_samples_size = 0;
34
++#else
35
+ size_t skip_samples_size = 0;
36
++#endif
37
+ const uint32_t* skip_samples_ptr =
38
+ reinterpret_cast<const uint32_t*>(av_packet_get_side_data(
39
+ packet, AV_PKT_DATA_SKIP_SAMPLES, &skip_samples_size));
40
+diff --git a/media/filters/ffmpeg_demuxer.cc b/media/filters/ffmpeg_demuxer.cc
41
+--- a/media/filters/ffmpeg_demuxer.cc
42
++++ b/media/filters/ffmpeg_demuxer.cc
43
+@@ -427,11 +427,19 @@ void FFmpegDemuxerStream::EnqueuePacket(
44
+ scoped_refptr<DecoderBuffer> buffer;
45
+
46
+ if (type() == DemuxerStream::TEXT) {
47
++#if LIBAVUTIL_VERSION_MAJOR < 57
48
++ int id_size = 0;
49
++#else
50
+ size_t id_size = 0;
51
++#endif
52
+ uint8_t* id_data = av_packet_get_side_data(
53
+ packet.get(), AV_PKT_DATA_WEBVTT_IDENTIFIER, &id_size);
54
+
55
++#if LIBAVUTIL_VERSION_MAJOR < 57
56
++ int settings_size = 0;
57
++#else
58
+ size_t settings_size = 0;
59
++#endif
60
+ uint8_t* settings_data = av_packet_get_side_data(
61
+ packet.get(), AV_PKT_DATA_WEBVTT_SETTINGS, &settings_size);
62
+
63
+@@ -443,7 +451,11 @@ void FFmpegDemuxerStream::EnqueuePacket(
64
+ buffer = DecoderBuffer::CopyFrom(packet->data, packet->size,
65
+ side_data.data(), side_data.size());
66
+ } else {
67
++#if LIBAVUTIL_VERSION_MAJOR < 57
68
++ int side_data_size = 0;
69
++#else
70
+ size_t side_data_size = 0;
71
++#endif
72
+ uint8_t* side_data = av_packet_get_side_data(
73
+ packet.get(), AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL, &side_data_size);
74
+
75
+@@ -504,7 +516,11 @@ void FFmpegDemuxerStream::EnqueuePacket(
76
+ packet->size - data_offset);
77
+ }
78
+
79
++#if LIBAVUTIL_VERSION_MAJOR < 57
80
++ int skip_samples_size = 0;
81
++#else
82
+ size_t skip_samples_size = 0;
83
++#endif
84
+ const uint32_t* skip_samples_ptr =
85
+ reinterpret_cast<const uint32_t*>(av_packet_get_side_data(
86
+ packet.get(), AV_PKT_DATA_SKIP_SAMPLES, &skip_samples_size));
87
chromium-93-pdfium-include.patch
Added
119
1
2
+From 7a6289c5ace52cf88f0e19caa5f78b7c15d0e7a6 Mon Sep 17 00:00:00 2001
3
+From: Miklos Vajna <vmiklos@collabora.co.uk>
4
+Date: Wed, 21 Jul 2021 17:42:30 +0000
5
+Subject: [PATCH] fxcodec, fxge: fix missing includes with libstdc++
6
+
7
+These missing includes break the build with gcc/libstdc++, they were not
8
+a problem in practice with clang/libc++.
9
+
10
+Change-Id: I40013f97ba7ab06f32aa59f87b04aec06a19478c
11
+Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/83210
12
+Commit-Queue: Lei Zhang <thestig@chromium.org>
13
+Reviewed-by: Lei Zhang <thestig@chromium.org>
14
+---
15
+
16
+diff --git a/third_party/pdfium/core/fxcodec/jpeg/jpegmodule.cpp b/third_party/pdfium/core/fxcodec/jpeg/jpegmodule.cpp
17
+index cea0679..036f250 100644
18
+--- a/third_party/pdfium/core/fxcodec/jpeg/jpegmodule.cpp
19
++++ b/third_party/pdfium/core/fxcodec/jpeg/jpegmodule.cpp
20
+@@ -7,6 +7,7 @@
21
+ #include "core/fxcodec/jpeg/jpegmodule.h"
22
+
23
+ #include <setjmp.h>
24
++#include <string.h>
25
+
26
+ #include <memory>
27
+ #include <utility>
28
+diff --git a/third_party/pdfium/core/fxcodec/jpx/cjpx_decoder.cpp b/third_party/pdfium/core/fxcodec/jpx/cjpx_decoder.cpp
29
+index c66985a..9c1122b 100644
30
+--- a/third_party/pdfium/core/fxcodec/jpx/cjpx_decoder.cpp
31
++++ b/third_party/pdfium/core/fxcodec/jpx/cjpx_decoder.cpp
32
+@@ -6,6 +6,8 @@
33
+
34
+ #include "core/fxcodec/jpx/cjpx_decoder.h"
35
+
36
++#include <string.h>
37
++
38
+ #include <algorithm>
39
+ #include <limits>
40
+ #include <utility>
41
+diff --git a/third_party/pdfium/core/fxge/cfx_cliprgn.cpp b/third_party/pdfium/core/fxge/cfx_cliprgn.cpp
42
+index 5369d52..d198852 100644
43
+--- a/third_party/pdfium/core/fxge/cfx_cliprgn.cpp
44
++++ b/third_party/pdfium/core/fxge/cfx_cliprgn.cpp
45
+@@ -6,6 +6,8 @@
46
+
47
+ #include "core/fxge/cfx_cliprgn.h"
48
+
49
++#include <string.h>
50
++
51
+ #include <utility>
52
+
53
+ #include "core/fxge/dib/cfx_dibitmap.h"
54
+diff --git a/third_party/pdfium/core/fxge/dib/cfx_bitmapcomposer.cpp b/third_party/pdfium/core/fxge/dib/cfx_bitmapcomposer.cpp
55
+index 6f9b420..0f1ffae 100644
56
+--- a/third_party/pdfium/core/fxge/dib/cfx_bitmapcomposer.cpp
57
++++ b/third_party/pdfium/core/fxge/dib/cfx_bitmapcomposer.cpp
58
+@@ -6,6 +6,8 @@
59
+
60
+ #include "core/fxge/dib/cfx_bitmapcomposer.h"
61
+
62
++#include <string.h>
63
++
64
+ #include "core/fxge/cfx_cliprgn.h"
65
+ #include "core/fxge/dib/cfx_dibitmap.h"
66
+
67
+diff --git a/third_party/pdfium/core/fxge/dib/cfx_bitmapstorer.cpp b/third_party/pdfium/core/fxge/dib/cfx_bitmapstorer.cpp
68
+index f57c00e..45a0a18 100644
69
+--- a/third_party/pdfium/core/fxge/dib/cfx_bitmapstorer.cpp
70
++++ b/third_party/pdfium/core/fxge/dib/cfx_bitmapstorer.cpp
71
+@@ -6,6 +6,8 @@
72
+
73
+ #include "core/fxge/dib/cfx_bitmapstorer.h"
74
+
75
++#include <string.h>
76
++
77
+ #include <utility>
78
+
79
+ #include "core/fxge/dib/cfx_dibitmap.h"
80
+diff --git a/third_party/pdfium/core/fxge/dib/cfx_dibbase.cpp b/third_party/pdfium/core/fxge/dib/cfx_dibbase.cpp
81
+index 4ec0ddb..a1de2fb 100644
82
+--- a/third_party/pdfium/core/fxge/dib/cfx_dibbase.cpp
83
++++ b/third_party/pdfium/core/fxge/dib/cfx_dibbase.cpp
84
+@@ -6,6 +6,8 @@
85
+
86
+ #include "core/fxge/dib/cfx_dibbase.h"
87
+
88
++#include <string.h>
89
++
90
+ #include <algorithm>
91
+ #include <memory>
92
+ #include <utility>
93
+diff --git a/third_party/pdfium/core/fxge/dib/cfx_dibitmap.cpp b/third_party/pdfium/core/fxge/dib/cfx_dibitmap.cpp
94
+index d7ccf6c..94e8acc 100644
95
+--- a/third_party/pdfium/core/fxge/dib/cfx_dibitmap.cpp
96
++++ b/third_party/pdfium/core/fxge/dib/cfx_dibitmap.cpp
97
+@@ -6,6 +6,8 @@
98
+
99
+ #include "core/fxge/dib/cfx_dibitmap.h"
100
+
101
++#include <string.h>
102
++
103
+ #include <limits>
104
+ #include <memory>
105
+ #include <utility>
106
+diff --git a/third_party/pdfium/core/fxge/dib/cfx_scanlinecompositor.cpp b/third_party/pdfium/core/fxge/dib/cfx_scanlinecompositor.cpp
107
+index e8362d7..c04c6dc 100644
108
+--- a/third_party/pdfium/core/fxge/dib/cfx_scanlinecompositor.cpp
109
++++ b/third_party/pdfium/core/fxge/dib/cfx_scanlinecompositor.cpp
110
+@@ -6,6 +6,8 @@
111
+
112
+ #include "core/fxge/dib/cfx_scanlinecompositor.h"
113
+
114
++#include <string.h>
115
++
116
+ #include <algorithm>
117
+
118
+ #include "core/fxge/dib/fx_dib.h"
119
chromium-buildname.patch
Added
15
1
2
+Index: chromium-73.0.3683.27/components/version_ui_strings.grdp
3
+===================================================================
4
+--- chromium-73.0.3683.27.orig/components/version_ui_strings.grdp
5
++++ chromium-73.0.3683.27/components/version_ui_strings.grdp
6
+@@ -7,7 +7,7 @@
7
+ Official Build
8
+ </message>
9
+ <message name="IDS_VERSION_UI_UNOFFICIAL" desc="unofficial build on the about:version page">
10
+- Developer Build
11
++ openSUSE Build
12
+ </message>
13
+ <message name="IDS_VERSION_UI_32BIT" desc="32-bit on the chrome://version page">
14
+ (32-bit)
15
chromium-clang-nomerge.patch
Added
45
1
2
+Upstream-status: Inapproriate
3
+
4
+Upstream suggests to use Chromium's hermetic clang
5
+instead.
6
+
7
+Signed-off-by: Maksim Sisov <msisov@igalia.com>
8
+---
9
+From bde3186ccba169391fb428fcc296b2236ada0010 Mon Sep 17 00:00:00 2001
10
+From: Maksim Sisov <msisov@igalia.com>
11
+Date: Wed, 5 May 2021 15:20:43 +0300
12
+Subject: [PATCH] nomerge attribute on declaration is only available since
13
+ clang 12
14
+
15
+This change fixes builds with older clangs that do not allow
16
+nomerge attributes on declaration. Otherwise, the following error
17
+is produced -
18
+
19
+build error: 'nomerge' attribute cannot be applied to a declaration
20
+
21
+See https://reviews.llvm.org/D92800
22
+
23
+Change-Id: I32e1f7dc9049737d54d8a16de5308aa5aae1ced1
24
+---
25
+ base/compiler_specific.h | 3 ++-
26
+ 1 file changed, 2 insertions(+), 1 deletion(-)
27
+
28
+diff --git a/base/compiler_specific.h b/base/compiler_specific.h
29
+index 6693e9ea33e9..d3b425abe9ca 100644
30
+--- a/base/compiler_specific.h
31
++++ b/base/compiler_specific.h
32
+@@ -340,7 +340,8 @@ inline constexpr bool AnalyzerAssumeTrue(bool arg) {
33
+ #endif // defined(__clang_analyzer__)
34
+
35
+ // Use nomerge attribute to disable optimization of merging multiple same calls.
36
+-#if defined(__clang__) && __has_attribute(nomerge)
37
++#if defined(__clang__) && (__clang_major__ >= 12) && \
38
++ __has_attribute(nomerge) && !defined(OS_CHROMEOS)
39
+ #define NOMERGE [[clang::nomerge]]
40
+ #else
41
+ #define NOMERGE
42
+--
43
+2.25.1
44
+
45
chromium-disable-parallel-gold.patch
Added
15
1
2
+diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
3
+index 01d97a360..a9a721403 100644
4
+--- a/build/config/compiler/BUILD.gn
5
++++ b/build/config/compiler/BUILD.gn
6
+@@ -415,8 +415,6 @@ config("compiler") {
7
+ # https://groups.google.com/a/chromium.org/group/chromium-dev/browse_thread/thread/281527606915bb36
8
+ # Only apply this to the target linker, since the host
9
+ # linker might not be gold, but isn't used much anyway.
10
+- "-Wl,--threads",
11
+- "-Wl,--thread-count=4",
12
+ ]
13
+ }
14
+
15
chromium-dma-buf.patch
Deleted
24
1
2
-Index: chromium-60.0.3088.3/ui/gfx/linux/client_native_pixmap_dmabuf.cc
3
-===================================================================
4
---- chromium-60.0.3088.3.orig/ui/gfx/linux/client_native_pixmap_dmabuf.cc
5
-+++ chromium-60.0.3088.3/ui/gfx/linux/client_native_pixmap_dmabuf.cc
6
-@@ -19,9 +19,6 @@
7
- #include "base/strings/stringprintf.h"
8
- #include "base/trace_event/trace_event.h"
9
-
10
--#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 11, 0)
11
--#include <linux/dma-buf.h>
12
--#else
13
- #include <linux/types.h>
14
-
15
- struct dma_buf_sync {
16
-@@ -36,7 +33,6 @@ struct dma_buf_sync {
17
-
18
- #define DMA_BUF_BASE 'b'
19
- #define DMA_BUF_IOCTL_SYNC _IOW(DMA_BUF_BASE, 0, struct dma_buf_sync)
20
--#endif
21
-
22
- namespace gfx {
23
-
24
chromium-ffmpeg-lp152.patch
Added
18
1
2
+--- a/media/filters/ffmpeg_demuxer.cc
3
++++ b/media/filters/ffmpeg_demuxer.cc
4
+@@ -50,7 +50,13 @@
5
+ #include "media/formats/webm/webm_crypto_helpers.h"
6
+ #include "media/media_buildflags.h"
7
+ #include "third_party/ffmpeg/ffmpeg_features.h"
8
++#include <libavcodec/version.h>
9
++#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(58, 78, 100)
10
+ #include "third_party/ffmpeg/libavcodec/packet.h"
11
++#else
12
++#include "third_party/ffmpeg/libavcodec/avcodec.h"
13
++#endif
14
++
15
+
16
+ #if BUILDFLAG(ENABLE_PLATFORM_HEVC)
17
+ #include "media/filters/ffmpeg_h265_to_annex_b_bitstream_converter.h"
18
chromium-freetype-2.11.patch
Added
54
1
2
+diff -up chromium-93.0.4577.63/third_party/skia/src/ports/SkFontHost_FreeType_common.cpp.freetype-2.11 chromium-93.0.4577.63/third_party/skia/src/ports/SkFontHost_FreeType_common.cpp
3
+--- chromium-93.0.4577.63/third_party/skia/src/ports/SkFontHost_FreeType_common.cpp.freetype-2.11 2021-09-02 08:49:18.996863417 -0400
4
++++ chromium-93.0.4577.63/third_party/skia/src/ports/SkFontHost_FreeType_common.cpp 2021-09-02 08:56:07.716626801 -0400
5
+@@ -712,7 +712,11 @@ void colrv1_draw_paint(SkCanvas* canvas,
6
+ canvas->drawPaint(colrPaint);
7
+ break;
8
+ }
9
++#if FREETYPE_MAJOR == 2 && FREETYPE_MINOR >= 11
10
+ case FT_COLR_PAINTFORMAT_TRANSFORM:
11
++#else
12
++ case FT_COLR_PAINTFORMAT_TRANSFORMED:
13
++#endif
14
+ case FT_COLR_PAINTFORMAT_TRANSLATE:
15
+ case FT_COLR_PAINTFORMAT_SCALE:
16
+ case FT_COLR_PAINTFORMAT_ROTATE:
17
+@@ -760,10 +764,17 @@ void colrv1_transform(SkCanvas* canvas,
18
+ SkMatrix transform;
19
+
20
+ switch (colrv1_paint.format) {
21
++#if FREETYPE_MAJOR == 2 && FREETYPE_MINOR >= 11
22
+ case FT_COLR_PAINTFORMAT_TRANSFORM: {
23
+ transform = ToSkMatrix(colrv1_paint.u.transform.affine);
24
+ break;
25
+ }
26
++#else
27
++ case FT_COLR_PAINTFORMAT_TRANSFORMED: {
28
++ transform = ToSkMatrix(colrv1_paint.u.transformed.affine);
29
++ break;
30
++ }
31
++#endif
32
+ case FT_COLR_PAINTFORMAT_TRANSLATE: {
33
+ transform = SkMatrix::Translate(
34
+ SkFixedToScalar(colrv1_paint.u.translate.dx),
35
+@@ -889,11 +900,18 @@ bool colrv1_traverse_paint(SkCanvas* can
36
+ traverse_result = colrv1_start_glyph(canvas, palette, face, paint.u.colr_glyph.glyphID,
37
+ FT_COLOR_NO_ROOT_TRANSFORM);
38
+ break;
39
++#if FREETYPE_MAJOR == 2 && FREETYPE_MINOR >= 11
40
+ case FT_COLR_PAINTFORMAT_TRANSFORM:
41
+ colrv1_transform(canvas, face, paint);
42
+ traverse_result = colrv1_traverse_paint(canvas, palette, face,
43
+ paint.u.transform.paint, visited_set);
44
+ break;
45
++#else
46
++ case FT_COLR_PAINTFORMAT_TRANSFORMED:
47
++ colrv1_transform(canvas, face, paint);
48
++ traverse_result = colrv1_traverse_paint(canvas, palette, face,
49
++ paint.u.transformed.paint, visited_set);
50
++#endif
51
+ case FT_COLR_PAINTFORMAT_TRANSLATE:
52
+ colrv1_transform(canvas, face, paint);
53
+ traverse_result = colrv1_traverse_paint(canvas, palette, face,
54
chromium-gcc11.patch
Added
129
1
2
+diff --git a/third_party/angle/src/libANGLE/HandleAllocator.cpp b/third_party/angle/src/libANGLE/HandleAllocator.cpp
3
+index 013f1dfb2..3ce63c192 100644
4
+--- a/third_party/angle/src/libANGLE/HandleAllocator.cpp
5
++++ b/third_party/angle/src/libANGLE/HandleAllocator.cpp
6
+@@ -9,6 +9,7 @@
7
+
8
+ #include "libANGLE/HandleAllocator.h"
9
+
10
++#include <limits>
11
+ #include <algorithm>
12
+ #include <functional>
13
+
14
+diff --git a/third_party/perfetto/src/trace_processor/containers/string_pool.cc b/third_party/perfetto/src/trace_processor/containers/string_pool.cc
15
+index fd651958f..1e8d0606c 100644
16
+--- a/third_party/perfetto/src/trace_processor/containers/string_pool.cc
17
++++ b/third_party/perfetto/src/trace_processor/containers/string_pool.cc
18
+@@ -14,9 +14,9 @@
19
+ * limitations under the License.
20
+ */
21
+
22
++#include <limits>
23
+ #include "src/trace_processor/containers/string_pool.h"
24
+
25
+-#include <limits>
26
+
27
+ #include "perfetto/base/logging.h"
28
+ #include "perfetto/ext/base/utils.h"
29
+diff --git a/third_party/perfetto/src/trace_processor/db/column.cc b/third_party/perfetto/src/trace_processor/db/column.cc
30
+index 00496b335..0dccfeb8a 100644
31
+--- a/third_party/perfetto/src/trace_processor/db/column.cc
32
++++ b/third_party/perfetto/src/trace_processor/db/column.cc
33
+@@ -14,6 +14,7 @@
34
+ * limitations under the License.
35
+ */
36
+
37
++#include <limits>
38
+ #include "src/trace_processor/db/column.h"
39
+
40
+ #include "src/trace_processor/db/compare.h"
41
+diff --git a/third_party/perfetto/src/trace_processor/types/variadic.cc b/third_party/perfetto/src/trace_processor/types/variadic.cc
42
+index 837bfeba9..cdd56817d 100644
43
+--- a/third_party/perfetto/src/trace_processor/types/variadic.cc
44
++++ b/third_party/perfetto/src/trace_processor/types/variadic.cc
45
+@@ -14,6 +14,7 @@
46
+ * limitations under the License.
47
+ */
48
+
49
++#include <limits>
50
+ #include "src/trace_processor/types/variadic.h"
51
+
52
+ namespace perfetto {
53
+diff --git a/ui/accessibility/platform/ax_platform_atk_hyperlink.cc b/ui/accessibility/platform/ax_platform_atk_hyperlink.cc
54
+index be91def6b..73f202356 100644
55
+--- a/ui/accessibility/platform/ax_platform_atk_hyperlink.cc
56
++++ b/ui/accessibility/platform/ax_platform_atk_hyperlink.cc
57
+@@ -245,7 +245,7 @@ static void AXPlatformAtkHyperlinkInit(AXPlatformAtkHyperlink* self, gpointer) {
58
+ }
59
+
60
+ GType ax_platform_atk_hyperlink_get_type() {
61
+- static volatile gsize type_volatile = 0;
62
++ static gsize type_volatile = 0;
63
+
64
+ AXPlatformNodeAuraLinux::EnsureGTypeInit();
65
+
66
+diff --git a/ui/accessibility/platform/ax_platform_node_auralinux.cc b/ui/accessibility/platform/ax_platform_node_auralinux.cc
67
+index 04125c6fd..6c64e5d8e 100644
68
+--- a/ui/accessibility/platform/ax_platform_node_auralinux.cc
69
++++ b/ui/accessibility/platform/ax_platform_node_auralinux.cc
70
+@@ -2274,7 +2274,7 @@ void ClassInit(gpointer class_pointer, gpointer /* class_data */) {
71
+ GType GetType() {
72
+ AXPlatformNodeAuraLinux::EnsureGTypeInit();
73
+
74
+- static volatile gsize type_volatile = 0;
75
++ static gsize type_volatile = 0;
76
+ if (g_once_init_enter(&type_volatile)) {
77
+ static const GTypeInfo type_info = {
78
+ sizeof(AXPlatformNodeAuraLinuxClass), // class_size
79
+diff --git a/ui/gtk/gtk_key_bindings_handler.cc b/ui/gtk/gtk_key_bindings_handler.cc
80
+index c663a2074..38a342484 100644
81
+--- a/ui/gtk/gtk_key_bindings_handler.cc
82
++++ b/ui/gtk/gtk_key_bindings_handler.cc
83
+@@ -141,7 +141,7 @@ void GtkKeyBindingsHandler::HandlerClassInit(HandlerClass* klass) {
84
+ }
85
+
86
+ GType GtkKeyBindingsHandler::HandlerGetType() {
87
+- static volatile gsize type_id_volatile = 0;
88
++ static gsize type_id_volatile = 0;
89
+ if (g_once_init_enter(&type_id_volatile)) {
90
+ GType type_id = g_type_register_static_simple(
91
+ GTK_TYPE_TEXT_VIEW, g_intern_static_string("GtkKeyBindingsHandler"),
92
+diff --git a/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc b/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc
93
+index c0b5a805b..e6f921926 100644
94
+--- a/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc
95
++++ b/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc
96
+@@ -2,6 +2,7 @@
97
+ // Use of this source code is governed by a BSD-style license that can be
98
+ // found in the LICENSE file.
99
+
100
++#include <cstddef>
101
+ #include "chrome/browser/ui/bookmarks/bookmark_tab_helper.h"
102
+
103
+ #include "base/observer_list.h"
104
+diff --git a/components/bookmarks/browser/bookmark_expanded_state_tracker.cc b/components/bookmarks/browser/bookmark_expanded_state_tracker.cc
105
+index 4ad2afa1f..5c4596e12 100644
106
+--- a/components/bookmarks/browser/bookmark_expanded_state_tracker.cc
107
++++ b/components/bookmarks/browser/bookmark_expanded_state_tracker.cc
108
+@@ -2,6 +2,7 @@
109
+ // Use of this source code is governed by a BSD-style license that can be
110
+ // found in the LICENSE file.
111
+
112
++#include <cstddef>
113
+ #include "components/bookmarks/browser/bookmark_expanded_state_tracker.h"
114
+
115
+ #include <stdint.h>
116
+diff --git a/components/bookmarks/browser/base_bookmark_model_observer.cc b/components/bookmarks/browser/base_bookmark_model_observer.cc
117
+index 657a3c96b..ad641a082 100644
118
+--- a/components/bookmarks/browser/base_bookmark_model_observer.cc
119
++++ b/components/bookmarks/browser/base_bookmark_model_observer.cc
120
+@@ -2,6 +2,8 @@
121
+ // Use of this source code is governed by a BSD-style license that can be
122
+ // found in the LICENSE file.
123
+
124
++#include <cstddef>
125
++
126
+ #include "components/bookmarks/browser/base_bookmark_model_observer.h"
127
+
128
+ namespace bookmarks {
129
chromium-glibc-2.33.patch
Added
151
1
2
+# Patch made by Kevin Kofler <Kevin@tigcc.ticalc.org>
3
+# https://bugzilla.redhat.com/show_bug.cgi?id=1904652
4
+
5
+Index: chromium-90.0.4430.72/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
6
+===================================================================
7
+--- chromium-90.0.4430.72.orig/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
8
++++ chromium-90.0.4430.72/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
9
+@@ -269,6 +269,18 @@ ResultExpr EvaluateSyscallImpl(int fs_de
10
+ return Allow();
11
+ }
12
+
13
++#if defined(__NR_newfstatat)
14
++ if (sysno == __NR_newfstatat) {
15
++ return RewriteFstatatSIGSYS();
16
++ }
17
++#endif
18
++
19
++#if defined(__NR_fstatat64)
20
++ if (sysno == __NR_fstatat64) {
21
++ return RewriteFstatatSIGSYS();
22
++ }
23
++#endif
24
++
25
+ if (SyscallSets::IsFileSystem(sysno) ||
26
+ SyscallSets::IsCurrentDirectory(sysno)) {
27
+ return Error(fs_denied_errno);
28
+Index: chromium-90.0.4430.72/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc
29
+===================================================================
30
+--- chromium-90.0.4430.72.orig/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc
31
++++ chromium-90.0.4430.72/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc
32
+@@ -6,6 +6,8 @@
33
+
34
+ #include "sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h"
35
+
36
++#include <errno.h>
37
++#include <fcntl.h>
38
+ #include <stddef.h>
39
+ #include <stdint.h>
40
+ #include <string.h>
41
+@@ -355,6 +357,35 @@ intptr_t SIGSYSSchedHandler(const struct
42
+ return -ENOSYS;
43
+ }
44
+
45
++intptr_t SIGSYSFstatatHandler(const struct arch_seccomp_data& args,
46
++ void* aux) {
47
++ switch (args.nr) {
48
++#if defined(__NR_newfstatat)
49
++ case __NR_newfstatat:
50
++#endif
51
++#if defined(__NR_fstatat64)
52
++ case __NR_fstatat64:
53
++#endif
54
++#if defined(__NR_newfstatat) || defined(__NR_fstatat64)
55
++ if (*reinterpret_cast<const char *>(args.args[1]) == '\0'
56
++ && args.args[3] == static_cast<uint64_t>(AT_EMPTY_PATH)) {
57
++ return sandbox::sys_fstat64(static_cast<int>(args.args[0]),
58
++ reinterpret_cast<struct stat64 *>(args.args[2]));
59
++ } else {
60
++ errno = EACCES;
61
++ return -1;
62
++ }
63
++ break;
64
++#endif
65
++ }
66
++
67
++ CrashSIGSYS_Handler(args, aux);
68
++
69
++ // Should never be reached.
70
++ RAW_CHECK(false);
71
++ return -ENOSYS;
72
++}
73
++
74
+ bpf_dsl::ResultExpr CrashSIGSYS() {
75
+ return bpf_dsl::Trap(CrashSIGSYS_Handler, NULL);
76
+ }
77
+@@ -387,6 +418,10 @@ bpf_dsl::ResultExpr RewriteSchedSIGSYS()
78
+ return bpf_dsl::Trap(SIGSYSSchedHandler, NULL);
79
+ }
80
+
81
++bpf_dsl::ResultExpr RewriteFstatatSIGSYS() {
82
++ return bpf_dsl::Trap(SIGSYSFstatatHandler, NULL);
83
++}
84
++
85
+ void AllocateCrashKeys() {
86
+ #if !defined(OS_NACL_NONSFI)
87
+ if (seccomp_crash_key)
88
+Index: chromium-90.0.4430.72/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h
89
+===================================================================
90
+--- chromium-90.0.4430.72.orig/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h
91
++++ chromium-90.0.4430.72/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h
92
+@@ -62,6 +62,10 @@ SANDBOX_EXPORT intptr_t SIGSYSPtraceFail
93
+ // sched_setparam(), sched_setscheduler()
94
+ SANDBOX_EXPORT intptr_t SIGSYSSchedHandler(const arch_seccomp_data& args,
95
+ void* aux);
96
++// If the fstatat syscall is actually a disguised fstat, calls the regular fstat
97
++// syscall, otherwise, crashes in the same way as CrashSIGSYS_Handler.
98
++SANDBOX_EXPORT intptr_t SIGSYSFstatatHandler(const struct arch_seccomp_data& args,
99
++ void* aux);
100
+
101
+ // Variants of the above functions for use with bpf_dsl.
102
+ SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYS();
103
+@@ -72,6 +76,7 @@ SANDBOX_EXPORT bpf_dsl::ResultExpr Crash
104
+ SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYSFutex();
105
+ SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYSPtrace();
106
+ SANDBOX_EXPORT bpf_dsl::ResultExpr RewriteSchedSIGSYS();
107
++SANDBOX_EXPORT bpf_dsl::ResultExpr RewriteFstatatSIGSYS();
108
+
109
+ // Allocates a crash key so that Seccomp information can be recorded.
110
+ void AllocateCrashKeys();
111
+Index: chromium-90.0.4430.72/sandbox/linux/services/syscall_wrappers.cc
112
+===================================================================
113
+--- chromium-90.0.4430.72.orig/sandbox/linux/services/syscall_wrappers.cc
114
++++ chromium-90.0.4430.72/sandbox/linux/services/syscall_wrappers.cc
115
+@@ -261,4 +261,13 @@ int sys_sigaction(int signum,
116
+
117
+ #endif // defined(MEMORY_SANITIZER)
118
+
119
++SANDBOX_EXPORT int sys_fstat64(int fd, struct stat64 *buf)
120
++{
121
++#if defined(__NR_fstat64)
122
++ return syscall(__NR_fstat64, fd, buf);
123
++#else
124
++ return syscall(__NR_fstat, fd, buf);
125
++#endif
126
++}
127
++
128
+ } // namespace sandbox
129
+Index: chromium-90.0.4430.72/sandbox/linux/services/syscall_wrappers.h
130
+===================================================================
131
+--- chromium-90.0.4430.72.orig/sandbox/linux/services/syscall_wrappers.h
132
++++ chromium-90.0.4430.72/sandbox/linux/services/syscall_wrappers.h
133
+@@ -17,6 +17,7 @@ struct sock_fprog;
134
+ struct rlimit64;
135
+ struct cap_hdr;
136
+ struct cap_data;
137
++struct stat64;
138
+
139
+ namespace sandbox {
140
+
141
+@@ -84,6 +85,9 @@ SANDBOX_EXPORT int sys_sigaction(int sig
142
+ const struct sigaction* act,
143
+ struct sigaction* oldact);
144
+
145
++// Recent glibc rewrites fstat to fstatat.
146
++SANDBOX_EXPORT int sys_fstat64(int fd, struct stat64 *buf);
147
++
148
+ } // namespace sandbox
149
+
150
+ #endif // SANDBOX_LINUX_SERVICES_SYSCALL_WRAPPERS_H_
151
chromium-glibc-2.34.patch
Added
28
1
2
+diff -up chromium-92.0.4515.107/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc.sigstkszfix chromium-92.0.4515.107/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
3
+--- chromium-92.0.4515.107/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc.sigstkszfix 2021-07-19 14:47:20.000000000 -0400
4
++++ chromium-92.0.4515.107/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc 2021-07-26 17:28:50.155924005 -0400
5
+@@ -138,7 +139,7 @@
6
+ // SIGSTKSZ may be too small to prevent the signal handlers from overrunning
7
+ // the alternative stack. Ensure that the size of the alternative stack is
8
+ // large enough.
9
+- static const unsigned kSigStackSize = std::max(16384, SIGSTKSZ);
10
++ static const unsigned kSigStackSize = std::max<size_t>(16384, SIGSTKSZ);
11
+
12
+ // Only set an alternative stack if there isn't already one, or if the current
13
+ // one is too small.
14
+From: https://forums.gentoo.org/viewtopic-p-8644495.html
15
+--- a/sandbox/linux/services/credentials.cc
16
++++ b/sandbox/linux/services/credentials.cc
17
+@@ -98,7 +98,9 @@
18
+ // attempt this optimization.
19
+ clone_flags |= CLONE_VM | CLONE_VFORK | CLONE_SETTLS;
20
+
21
+- char tls_buf[PTHREAD_STACK_MIN] = {0};
22
++ const std::size_t pthread_stack_min = PTHREAD_STACK_MIN;
23
++ char tls_buf[pthread_stack_min];
24
++ memset(tls_buf, 0, pthread_stack_min);
25
+ tls = tls_buf;
26
+ #endif
27
+
28
chromium-libusb_interrupt_event_handler.patch
Added
17
1
2
+diff -up chromium-48.0.2564.116/services/device/usb/usb_context.cc.modern-libusbx chromium-48.0.2564.116/device/usb/usb_context.cc
3
+--- chromium-48.0.2564.116/services/device/usb/usb_context.cc.modern-libusbx 2016-02-24 10:21:10.534996028 -0500
4
++++ chromium-48.0.2564.116/services/device/usb/usb_context.cc 2016-02-24 10:22:28.270499864 -0500
5
+@@ -57,7 +57,11 @@ void UsbContext::UsbEventHandler::Run()
6
+
7
+ void UsbContext::UsbEventHandler::Stop() {
8
+ base::subtle::Release_Store(&running_, 0);
9
++#ifdef LIBUSB_API_VERSION >= 0x01000105
10
++ libusb_interrupt_event_handler(context_);
11
++#else
12
+ libusb_interrupt_handle_event(context_);
13
++#endif
14
+ }
15
+
16
+ UsbContext::UsbContext(PlatformUsbContext context) : context_(context) {
17
chromium-lp151-old-drm.patch
Added
34
1
2
+Index: chromium-85.0.4183.69/ui/gfx/linux/drm_util_linux.cc
3
+===================================================================
4
+--- chromium-85.0.4183.69.orig/ui/gfx/linux/drm_util_linux.cc
5
++++ chromium-85.0.4183.69/ui/gfx/linux/drm_util_linux.cc
6
+@@ -6,6 +6,27 @@
7
+
8
+ #include <drm_fourcc.h>
9
+
10
++#ifndef DRM_FORMAT_P010
11
++/*
12
++ * 2 plane YCbCr MSB aligned
13
++ * index 0 = Y plane, [15:0] Y:x [10:6] little endian
14
++ * index 1 = Cr:Cb plane, [31:0] Cr:x:Cb:x [10:6:10:6] little endian
15
++ */
16
++#define DRM_FORMAT_P010 fourcc_code('P', '0', '1', '0') /* 2x2 subsampled Cr:Cb plane 10 bits per channel */
17
++/*
18
++ * 2 plane YCbCr MSB aligned
19
++ * index 0 = Y plane, [15:0] Y:x [12:4] little endian
20
++ * index 1 = Cr:Cb plane, [31:0] Cr:x:Cb:x [12:4:12:4] little endian
21
++ */
22
++#define DRM_FORMAT_P012 fourcc_code('P', '0', '1', '2') /* 2x2 subsampled Cr:Cb plane 12 bits per channel */
23
++/*
24
++ * 2 plane YCbCr MSB aligned
25
++ * index 0 = Y plane, [15:0] Y little endian
26
++ * index 1 = Cr:Cb plane, [31:0] Cr:Cb [16:16] little endian
27
++ */
28
++#define DRM_FORMAT_P016 fourcc_code('P', '0', '1', '6') /* 2x2 subsampled Cr:Cb plane 16 bits per channel */
29
++#endif
30
++
31
+ #include "base/notreached.h"
32
+
33
+ namespace ui {
34
chromium-master-prefs-path.patch
Added
17
1
2
+Index: chromium-91.0.4472.57/chrome/browser/first_run/first_run_internal_linux.cc
3
+===================================================================
4
+--- chromium-91.0.4472.57.orig/chrome/browser/first_run/first_run_internal_linux.cc
5
++++ chromium-91.0.4472.57/chrome/browser/first_run/first_run_internal_linux.cc
6
+@@ -21,9 +21,7 @@ bool IsOrganicFirstRun() {
7
+ base::FilePath InitialPrefsPath() {
8
+ // The standard location of the initial prefs is next to the chrome binary.
9
+ base::FilePath initial_prefs;
10
+- if (!base::PathService::Get(base::DIR_EXE, &initial_prefs))
11
+- return base::FilePath();
12
+-
13
++ initial_prefs = base::FilePath("/etc/chromium");
14
+ base::FilePath new_path = initial_prefs.AppendASCII(installer::kInitialPrefs);
15
+ if (base::PathIsReadable(new_path))
16
+ return new_path;
17
chromium-non-void-return.patch
Deleted
201
1
2
-Index: chromium-69.0.3497.57/media/gpu/vaapi/vaapi_wrapper.cc
3
-===================================================================
4
---- chromium-69.0.3497.57.orig/media/gpu/vaapi/vaapi_wrapper.cc
5
-+++ chromium-69.0.3497.57/media/gpu/vaapi/vaapi_wrapper.cc
6
-@@ -400,6 +400,8 @@ static VAEntrypoint GetVaEntryPoint(Vaap
7
- case VaapiWrapper::kCodecModeMax:
8
- NOTREACHED();
9
- return VAEntrypointVLD;
10
-+ default:
11
-+ return 0;
12
- }
13
- }
14
-
15
-Index: chromium-69.0.3497.57/cc/input/snap_fling_controller.cc
16
-===================================================================
17
---- chromium-69.0.3497.57.orig/cc/input/snap_fling_controller.cc
18
-+++ chromium-69.0.3497.57/cc/input/snap_fling_controller.cc
19
-@@ -26,6 +26,8 @@ bool SnapFlingController::FilterEventFor
20
- case GestureScrollType::kEnd: {
21
- return state_ == State::kActive || state_ == State::kFinished;
22
- }
23
-+ default:
24
-+ return false;
25
- }
26
- }
27
-
28
-Index: chromium-69.0.3497.57/chrome/browser/ui/webui/discards/discards_ui.cc
29
-===================================================================
30
---- chromium-69.0.3497.57.orig/chrome/browser/ui/webui/discards/discards_ui.cc
31
-+++ chromium-69.0.3497.57/chrome/browser/ui/webui/discards/discards_ui.cc
32
-@@ -48,6 +48,8 @@ mojom::LifecycleUnitVisibility GetLifecy
33
- return mojom::LifecycleUnitVisibility::OCCLUDED;
34
- case content::Visibility::VISIBLE:
35
- return mojom::LifecycleUnitVisibility::VISIBLE;
36
-+ default:
37
-+ return mojom::LifecycleUnitVisibility::VISIBLE;
38
- }
39
- #if defined(COMPILER_MSVC)
40
- NOTREACHED();
41
-Index: chromium-69.0.3497.57/components/autofill/core/browser/autofill_manager.cc
42
-===================================================================
43
---- chromium-69.0.3497.57.orig/components/autofill/core/browser/autofill_manager.cc
44
-+++ chromium-69.0.3497.57/components/autofill/core/browser/autofill_manager.cc
45
-@@ -285,6 +285,7 @@ PopupType AutofillManager::GetPopupType(
46
-
47
- default:
48
- NOTREACHED();
49
-+ return PopupType::kUnspecified;
50
- }
51
- }
52
-
53
-Index: chromium-69.0.3497.57/components/cast_channel/cast_message_util.cc
54
-===================================================================
55
---- chromium-69.0.3497.57.orig/components/cast_channel/cast_message_util.cc
56
-+++ chromium-69.0.3497.57/components/cast_channel/cast_message_util.cc
57
-@@ -368,6 +368,8 @@ const char* GetAppAvailabilityResultToSt
58
- return "unavailable";
59
- case GetAppAvailabilityResult::kUnknown:
60
- return "unknown";
61
-+ default:
62
-+ return "unknown";
63
- }
64
- }
65
-
66
-Index: chromium-69.0.3497.57/components/data_reduction_proxy/core/browser/data_reduction_proxy_util.cc
67
-===================================================================
68
---- chromium-69.0.3497.57.orig/components/data_reduction_proxy/core/browser/data_reduction_proxy_util.cc
69
-+++ chromium-69.0.3497.57/components/data_reduction_proxy/core/browser/data_reduction_proxy_util.cc
70
-@@ -337,6 +337,8 @@ PageloadMetrics_ConnectionType ProtoConn
71
- return PageloadMetrics_ConnectionType_CONNECTION_NONE;
72
- case net::NetworkChangeNotifier::CONNECTION_BLUETOOTH:
73
- return PageloadMetrics_ConnectionType_CONNECTION_BLUETOOTH;
74
-+ default:
75
-+ return PageloadMetrics_ConnectionType_CONNECTION_UNKNOWN;
76
- }
77
- }
78
-
79
-@@ -351,6 +353,8 @@ RequestInfo_Protocol ProtoRequestInfoPro
80
- return RequestInfo_Protocol_QUIC;
81
- case DataReductionProxyData::RequestInfo::Protocol::UNKNOWN:
82
- return RequestInfo_Protocol_UNKNOWN;
83
-+ default:
84
-+ return RequestInfo_Protocol_UNKNOWN;
85
- }
86
- }
87
-
88
-Index: chromium-69.0.3497.57/content/browser/cache_storage/cache_storage_quota_client.cc
89
-===================================================================
90
---- chromium-69.0.3497.57.orig/content/browser/cache_storage/cache_storage_quota_client.cc
91
-+++ chromium-69.0.3497.57/content/browser/cache_storage/cache_storage_quota_client.cc
92
-@@ -98,6 +98,8 @@ storage::QuotaClient::ID CacheStorageQuo
93
- return kServiceWorkerCache;
94
- case CacheStorageOwner::kBackgroundFetch:
95
- return kBackgroundFetch;
96
-+ default:
97
-+ return kBackgroundFetch;
98
- }
99
- }
100
-
101
-Index: chromium-69.0.3497.57/media/capture/video/video_capture_device_descriptor.cc
102
-===================================================================
103
---- chromium-69.0.3497.57.orig/media/capture/video/video_capture_device_descriptor.cc
104
-+++ chromium-69.0.3497.57/media/capture/video/video_capture_device_descriptor.cc
105
-@@ -94,6 +94,8 @@ const char* VideoCaptureDeviceDescriptor
106
- return "Virtual Device";
107
- case VideoCaptureApi::UNKNOWN:
108
- return "Unknown";
109
-+ default:
110
-+ return "Unknown";
111
- }
112
- }
113
-
114
-Index: chromium-69.0.3497.57/net/nqe/network_quality_estimator.cc
115
-===================================================================
116
---- chromium-69.0.3497.57.orig/net/nqe/network_quality_estimator.cc
117
-+++ chromium-69.0.3497.57/net/nqe/network_quality_estimator.cc
118
-@@ -1342,6 +1342,8 @@ base::TimeDelta NetworkQualityEstimator:
119
- case nqe::internal::OBSERVATION_CATEGORY_COUNT:
120
- NOTREACHED();
121
- return base::TimeDelta();
122
-+ default:
123
-+ return base::TimeDelta();
124
- }
125
- }
126
-
127
-Index: chromium-69.0.3497.57/services/audio/public/cpp/audio_system_to_service_adapter.cc
128
-===================================================================
129
---- chromium-69.0.3497.57.orig/services/audio/public/cpp/audio_system_to_service_adapter.cc
130
-+++ chromium-69.0.3497.57/services/audio/public/cpp/audio_system_to_service_adapter.cc
131
-@@ -66,6 +66,8 @@ const char* GetTraceEvent(Action action)
132
- return "AudioSystemToServiceAdapter::GetAssociatedOutputDeviceID";
133
- case kGetInputDeviceInfo:
134
- return "AudioSystemToServiceAdapter::GetInputDeviceInfo";
135
-+ default:
136
-+ return "Unknown";
137
- }
138
- NOTREACHED();
139
- }
140
-Index: chromium-69.0.3497.57/services/network/cross_origin_read_blocking.cc
141
-===================================================================
142
---- chromium-69.0.3497.57.orig/services/network/cross_origin_read_blocking.cc
143
-+++ chromium-69.0.3497.57/services/network/cross_origin_read_blocking.cc
144
-@@ -800,6 +800,8 @@ bool CrossOriginReadBlocking::ResponseAn
145
- return sniffers_.empty() && !found_blockable_content_;
146
- case kBlock:
147
- return false;
148
-+ default:
149
-+ return true;
150
- }
151
- }
152
-
153
-@@ -811,6 +813,8 @@ bool CrossOriginReadBlocking::ResponseAn
154
- return sniffers_.empty() && found_blockable_content_;
155
- case kBlock:
156
- return true;
157
-+ default:
158
-+ return false;
159
- }
160
- }
161
-
162
-Index: chromium-69.0.3497.57/third_party/blink/renderer/modules/accessibility/ax_layout_object.cc
163
-===================================================================
164
---- chromium-69.0.3497.57.orig/third_party/blink/renderer/modules/accessibility/ax_layout_object.cc
165
-+++ chromium-69.0.3497.57/third_party/blink/renderer/modules/accessibility/ax_layout_object.cc
166
-@@ -1191,6 +1191,8 @@ AXTextPosition AXLayoutObject::GetTextPo
167
- return kAXTextPositionSubscript;
168
- case EVerticalAlign::kSuper:
169
- return kAXTextPositionSuperscript;
170
-+ default:
171
-+ return AXNodeObject::GetTextPosition();
172
- }
173
- }
174
-
175
-Index: chromium-69.0.3497.57/third_party/blink/renderer/modules/webaudio/audio_param.cc
176
-===================================================================
177
---- chromium-69.0.3497.57.orig/third_party/blink/renderer/modules/webaudio/audio_param.cc
178
-+++ chromium-69.0.3497.57/third_party/blink/renderer/modules/webaudio/audio_param.cc
179
-@@ -144,6 +144,7 @@ String AudioParamHandler::GetParamName()
180
- return custom_param_name_;
181
- default:
182
- NOTREACHED();
183
-+ return "Unknown";
184
- }
185
- }
186
-
187
-Index: chromium-69.0.3497.57/ui/accessibility/platform/ax_platform_node_auralinux.cc
188
-===================================================================
189
---- chromium-69.0.3497.57.orig/ui/accessibility/platform/ax_platform_node_auralinux.cc
190
-+++ chromium-69.0.3497.57/ui/accessibility/platform/ax_platform_node_auralinux.cc
191
-@@ -1291,6 +1291,8 @@ AtkRole AXPlatformNodeAuraLinux::GetAtkR
192
- case ax::mojom::Role::kPresentational:
193
- case ax::mojom::Role::kUnknown:
194
- return ATK_ROLE_REDUNDANT_OBJECT;
195
-+ default:
196
-+ return ATK_ROLE_REDUNDANT_OBJECT;
197
- }
198
- }
199
-
200
-Index: chromium-69.0.3497.57/chrome/browser/chrome_browser_main.cc
201
chromium-norar.patch
Added
92
1
2
+diff -up chromium-93.0.4577.63/chrome/common/safe_browsing/BUILD.gn.nounrar chromium-93.0.4577.63/chrome/common/safe_browsing/BUILD.gn
3
+--- chromium-93.0.4577.63/chrome/common/safe_browsing/BUILD.gn.nounrar 2021-09-02 08:22:31.280927364 -0400
4
++++ chromium-93.0.4577.63/chrome/common/safe_browsing/BUILD.gn 2021-09-02 08:23:32.143189935 -0400
5
+@@ -43,39 +43,6 @@ if (safe_browsing_mode == 1) {
6
+ public_deps = [ "//components/safe_browsing/core/common/proto:csd_proto" ]
7
+ }
8
+
9
+- source_set("rar_analyzer") {
10
+- sources = [
11
+- "rar_analyzer.cc",
12
+- "rar_analyzer.h",
13
+- ]
14
+-
15
+- deps = [
16
+- ":archive_analyzer_results",
17
+- ":download_type_util",
18
+- "//base",
19
+- "//base:i18n",
20
+- "//components/safe_browsing/content/common:file_type_policies",
21
+- "//components/safe_browsing/core/common",
22
+- "//third_party/unrar:unrar",
23
+- ]
24
+-
25
+- defines = [
26
+- "_FILE_OFFSET_BITS=64",
27
+- "LARGEFILE_SOURCE",
28
+- "RAR_SMP",
29
+- "SILENT",
30
+-
31
+- # The following is set to disable certain macro definitions in the unrar
32
+- # source code.
33
+- "CHROMIUM_UNRAR",
34
+-
35
+- # Disables exceptions in unrar, replaces them with process termination.
36
+- "UNRAR_NO_EXCEPTIONS",
37
+- ]
38
+-
39
+- public_deps = [ "//components/safe_browsing/core/common/proto:csd_proto" ]
40
+- }
41
+-
42
+ if (is_mac) {
43
+ source_set("disk_image_type_sniffer_mac") {
44
+ sources = [
45
+@@ -149,7 +116,6 @@ source_set("safe_browsing") {
46
+ ":archive_analyzer_results",
47
+ ":binary_feature_extractor",
48
+ ":download_type_util",
49
+- ":rar_analyzer",
50
+ "//components/safe_browsing/core/common",
51
+ ]
52
+
53
+diff -up chromium-93.0.4577.63/chrome/common/safe_browsing/DEPS.nounrar chromium-93.0.4577.63/chrome/common/safe_browsing/DEPS
54
+--- chromium-93.0.4577.63/chrome/common/safe_browsing/DEPS.nounrar 2021-09-02 08:22:31.280927364 -0400
55
++++ chromium-93.0.4577.63/chrome/common/safe_browsing/DEPS 2021-09-02 08:23:56.092293262 -0400
56
+@@ -2,6 +2,5 @@ include_rules = [
57
+ "+components/safe_browsing/content/common",
58
+ "+components/safe_browsing/core/common",
59
+ "+third_party/protobuf",
60
+- "+third_party/unrar",
61
+ "+third_party/zlib",
62
+ ]
63
+diff -up chromium-93.0.4577.63/chrome/services/file_util/BUILD.gn.nounrar chromium-93.0.4577.63/chrome/services/file_util/BUILD.gn
64
+--- chromium-93.0.4577.63/chrome/services/file_util/BUILD.gn.nounrar 2021-08-31 21:39:29.000000000 -0400
65
++++ chromium-93.0.4577.63/chrome/services/file_util/BUILD.gn 2021-09-02 08:22:31.280927364 -0400
66
+@@ -50,7 +50,6 @@ source_set("file_util") {
67
+ deps += [
68
+ "//chrome/common/safe_browsing",
69
+ "//chrome/common/safe_browsing:archive_analyzer_results",
70
+- "//chrome/common/safe_browsing:rar_analyzer",
71
+ ]
72
+ }
73
+
74
+diff -up chromium-93.0.4577.63/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-93.0.4577.63/chrome/services/file_util/safe_archive_analyzer.cc
75
+--- chromium-93.0.4577.63/chrome/services/file_util/safe_archive_analyzer.cc.nounrar 2021-08-31 21:39:29.000000000 -0400
76
++++ chromium-93.0.4577.63/chrome/services/file_util/safe_archive_analyzer.cc 2021-09-02 08:22:31.281927369 -0400
77
+@@ -45,10 +45,14 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile
78
+ void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file,
79
+ base::File temporary_file,
80
+ AnalyzeRarFileCallback callback) {
81
++#if 0
82
+ DCHECK(rar_file.IsValid());
83
+
84
+ safe_browsing::ArchiveAnalyzerResults results;
85
+ safe_browsing::rar_analyzer::AnalyzeRarFile(
86
+ std::move(rar_file), std::move(temporary_file), &results);
87
+ std::move(callback).Run(results);
88
++#else
89
++ NOTREACHED();
90
++#endif
91
+ }
92
chromium-old-glibc.patch
Deleted
75
1
2
-Index: chromium-69.0.3497.72/gpu/config/gpu_info.cc
3
-===================================================================
4
---- chromium-69.0.3497.72.orig/gpu/config/gpu_info.cc
5
-+++ chromium-69.0.3497.72/gpu/config/gpu_info.cc
6
-@@ -99,15 +99,15 @@ GPUInfo::GPUDevice::GPUDevice()
7
-
8
- GPUInfo::GPUDevice::GPUDevice(const GPUInfo::GPUDevice& other) = default;
9
-
10
--GPUInfo::GPUDevice::GPUDevice(GPUInfo::GPUDevice&& other) noexcept = default;
11
-+GPUInfo::GPUDevice::GPUDevice(GPUInfo::GPUDevice&& other) = default;
12
-
13
--GPUInfo::GPUDevice::~GPUDevice() noexcept = default;
14
-+GPUInfo::GPUDevice::~GPUDevice() = default;
15
-
16
- GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=(
17
- const GPUInfo::GPUDevice& other) = default;
18
-
19
- GPUInfo::GPUDevice& GPUInfo::GPUDevice::operator=(
20
-- GPUInfo::GPUDevice&& other) noexcept = default;
21
-+ GPUInfo::GPUDevice&& other) = default;
22
-
23
- GPUInfo::GPUInfo()
24
- : optimus(false),
25
-Index: chromium-69.0.3497.72/components/policy/core/common/policy_map.cc
26
-===================================================================
27
---- chromium-69.0.3497.72.orig/components/policy/core/common/policy_map.cc
28
-+++ chromium-69.0.3497.72/components/policy/core/common/policy_map.cc
29
-@@ -15,8 +15,8 @@ PolicyMap::Entry::Entry() = default;
30
-
31
- PolicyMap::Entry::~Entry() = default;
32
-
33
--PolicyMap::Entry::Entry(Entry&&) noexcept = default;
34
--PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) noexcept = default;
35
-+PolicyMap::Entry::Entry(Entry&&) = default;
36
-+PolicyMap::Entry& PolicyMap::Entry::operator=(Entry&&) = default;
37
-
38
- PolicyMap::Entry PolicyMap::Entry::DeepCopy() const {
39
- Entry copy;
40
-Index: chromium-69.0.3497.72/components/search_provider_logos/logo_common.cc
41
-===================================================================
42
---- chromium-69.0.3497.72.orig/components/search_provider_logos/logo_common.cc
43
-+++ chromium-69.0.3497.72/components/search_provider_logos/logo_common.cc
44
-@@ -12,24 +12,24 @@ const int64_t kMaxTimeToLiveMS = INT64_C
45
-
46
- LogoMetadata::LogoMetadata() = default;
47
- LogoMetadata::LogoMetadata(const LogoMetadata&) = default;
48
--LogoMetadata::LogoMetadata(LogoMetadata&&) noexcept = default;
49
-+LogoMetadata::LogoMetadata(LogoMetadata&&) = default;
50
- LogoMetadata& LogoMetadata::operator=(const LogoMetadata&) = default;
51
--LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) noexcept = default;
52
-+LogoMetadata& LogoMetadata::operator=(LogoMetadata&&) = default;
53
- LogoMetadata::~LogoMetadata() = default;
54
-
55
- EncodedLogo::EncodedLogo() = default;
56
- EncodedLogo::EncodedLogo(const EncodedLogo&) = default;
57
--EncodedLogo::EncodedLogo(EncodedLogo&&) noexcept = default;
58
-+EncodedLogo::EncodedLogo(EncodedLogo&&) = default;
59
- EncodedLogo& EncodedLogo::operator=(const EncodedLogo&) = default;
60
--EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) noexcept = default;
61
-+EncodedLogo& EncodedLogo::operator=(EncodedLogo&&) = default;
62
- EncodedLogo::~EncodedLogo() = default;
63
-
64
- Logo::Logo() = default;
65
- Logo::~Logo() = default;
66
-
67
- LogoCallbacks::LogoCallbacks() = default;
68
--LogoCallbacks::LogoCallbacks(LogoCallbacks&&) noexcept = default;
69
--LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) noexcept = default;
70
-+LogoCallbacks::LogoCallbacks(LogoCallbacks&&) = default;
71
-+LogoCallbacks& LogoCallbacks::operator=(LogoCallbacks&&) = default;
72
- LogoCallbacks::~LogoCallbacks() = default;
73
-
74
- } // namespace search_provider_logos
75
chromium-prop-codecs.patch
Added
19
1
2
+Index: chromium-85.0.4183.69/media/BUILD.gn
3
+===================================================================
4
+--- chromium-85.0.4183.69.orig/media/BUILD.gn
5
++++ chromium-85.0.4183.69/media/BUILD.gn
6
+@@ -44,12 +44,6 @@ buildflag_header("media_buildflags") {
7
+ ]
8
+ }
9
+
10
+-if (proprietary_codecs && media_use_ffmpeg) {
11
+- assert(
12
+- ffmpeg_branding != "Chromium",
13
+- "proprietary codecs and ffmpeg_branding set to Chromium are incompatible")
14
+-}
15
+-
16
+ # Common configuration for targets in the media directory; these must not be
17
+ # exported since things like USE_NEON and USE_CRAS have different meanings
18
+ # elsewhere in the code base.
19
chromium-shim_headers.patch
Added
50
1
2
+From e273172bbafedca36984fc40f4aa6c44b79ac2ef Mon Sep 17 00:00:00 2001
3
+From: Stephan Hartmann <stha09@googlemail.com>
4
+Date: Fri, 25 Dec 2020 09:10:32 +0000
5
+Subject: [PATCH] shim_headers: fix outputs generation
6
+
7
+---
8
+ build/shim_headers.gni | 11 +++++++----
9
+ 1 file changed, 7 insertions(+), 4 deletions(-)
10
+
11
+diff --git a/build/shim_headers.gni b/build/shim_headers.gni
12
+index 0900cba..5138647 100644
13
+--- a/build/shim_headers.gni
14
++++ b/build/shim_headers.gni
15
+@@ -6,6 +6,8 @@ template("shim_headers") {
16
+ action_name = "gen_${target_name}"
17
+ config_name = "${target_name}_config"
18
+ shim_headers_path = "${root_gen_dir}/shim_headers/${target_name}"
19
++ shim_root_path = rebase_path(invoker.root_path)
20
++ shim_rel_path = rebase_path("${shim_root_path}", rebase_path("//"))
21
+
22
+ config(config_name) {
23
+ include_dirs = [ shim_headers_path ]
24
+@@ -16,7 +18,7 @@ template("shim_headers") {
25
+ args = [
26
+ "--generate",
27
+ "--headers-root",
28
+- rebase_path(invoker.root_path),
29
++ "${shim_root_path}",
30
+ "--output-directory",
31
+ rebase_path(shim_headers_path),
32
+ ]
33
+@@ -27,9 +29,10 @@ template("shim_headers") {
34
+ ]
35
+ }
36
+ args += invoker.headers
37
+-
38
+- outputs = process_file_template(invoker.headers,
39
+- "${shim_headers_path}/{{source_file_part}}")
40
++ outputs = []
41
++ foreach(shim_header, invoker.headers) {
42
++ outputs += [ "${shim_headers_path}/${shim_rel_path}/" + shim_header ]
43
++ }
44
+ }
45
+
46
+ group(target_name) {
47
+--
48
+2.26.2
49
+
50
chromium-skia-system-fontconfig.patch
Deleted
79
1
2
---- chromium-69.0.3493.3.old/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2018-07-25 16:42:39.217368047 +0200
3
-+++ chromium-69.0.3493.3/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2018-07-25 16:44:03.387793112 +0200
4
-@@ -112,8 +112,6 @@
5
- : fGetVarDesignCoordinates(nullptr)
6
- , fGetVarAxisFlags(nullptr)
7
- , fLibrary(nullptr)
8
-- , fIsLCDSupported(false)
9
-- , fLCDExtra(0)
10
- {
11
- if (FT_New_Library(&gFTMemory, &fLibrary)) {
12
- return;
13
-@@ -173,12 +171,7 @@
14
- }
15
- #endif
16
-
17
-- // Setup LCD filtering. This reduces color fringes for LCD smoothed glyphs.
18
-- // The default has changed over time, so this doesn't mean the same thing to all users.
19
-- if (FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT) == 0) {
20
-- fIsLCDSupported = true;
21
-- fLCDExtra = 2; //Using a filter adds one full pixel to each side.
22
-- }
23
-+ FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT);
24
- }
25
- ~FreeTypeLibrary() {
26
- if (fLibrary) {
27
-@@ -187,8 +180,6 @@
28
- }
29
-
30
- FT_Library library() { return fLibrary; }
31
-- bool isLCDSupported() { return fIsLCDSupported; }
32
-- int lcdExtra() { return fLCDExtra; }
33
-
34
- // FT_Get_{MM,Var}_{Blend,Design}_Coordinates were added in FreeType 2.7.1.
35
- // Prior to this there was no way to get the coordinates out of the FT_Face.
36
-@@ -205,8 +196,6 @@
37
-
38
- private:
39
- FT_Library fLibrary;
40
-- bool fIsLCDSupported;
41
-- int fLCDExtra;
42
-
43
- // FT_Library_SetLcdFilterWeights was introduced in FreeType 2.4.0.
44
- // The following platforms provide FreeType of at least 2.4.0.
45
-@@ -704,17 +693,6 @@
46
- rec->fTextSize = SkIntToScalar(1 << 14);
47
- }
48
-
49
-- if (isLCD(*rec)) {
50
-- // TODO: re-work so that FreeType is set-up and selected by the SkFontMgr.
51
-- SkAutoMutexAcquire ama(gFTMutex);
52
-- ref_ft_library();
53
-- if (!gFTLibrary->isLCDSupported()) {
54
-- // If the runtime Freetype library doesn't support LCD, disable it here.
55
-- rec->fMaskFormat = SkMask::kA8_Format;
56
-- }
57
-- unref_ft_library();
58
-- }
59
--
60
- SkPaint::Hinting h = rec->getHinting();
61
- if (SkPaint::kFull_Hinting == h && !isLCD(*rec)) {
62
- // collapse full->normal hinting if we're not doing LCD
63
-@@ -1109,11 +1087,11 @@
64
- void SkScalerContext_FreeType::updateGlyphIfLCD(SkGlyph* glyph) {
65
- if (isLCD(fRec)) {
66
- if (fLCDIsVert) {
67
-- glyph->fHeight += gFTLibrary->lcdExtra();
68
-- glyph->fTop -= gFTLibrary->lcdExtra() >> 1;
69
-+ glyph->fHeight += 2;
70
-+ glyph->fTop -= 1;
71
- } else {
72
-- glyph->fWidth += gFTLibrary->lcdExtra();
73
-- glyph->fLeft -= gFTLibrary->lcdExtra() >> 1;
74
-+ glyph->fWidth += 2;
75
-+ glyph->fLeft -= 1;
76
- }
77
- }
78
- }
79
chromium-system-icu.patch
Deleted
13
1
2
---- chromium-70.0.3521.2.old/third_party/blink/renderer/platform/text/character_property_data_generator.h 2018-08-15 12:41:21.091987662 +0200
3
-+++ chromium-70.0.3521.2/third_party/blink/renderer/platform/text/character_property_data_generator.h 2018-08-17 12:37:45.459538308 +0200
4
-@@ -247,7 +247,7 @@
5
- 0xFFA0, 0xFFDC,
6
- };
7
-
8
--static const UChar32 kIsHangulArray[] = {};
9
-+static const UChar32 kIsHangulArray[] = {0xFFDC,};
10
-
11
- } // namespace blink
12
-
13
chromium-system-libusb.patch
Added
43
1
2
+Index: chromium-70.0.3538.54/build/linux/unbundle/libusb.gn
3
+===================================================================
4
+--- /dev/null
5
++++ chromium-70.0.3538.54/build/linux/unbundle/libusb.gn
6
+@@ -0,0 +1,24 @@
7
++# Copyright 2016 The Chromium Authors. All rights reserved.
8
++# Use of this source code is governed by a BSD-style license that can be
9
++# found in the LICENSE file.
10
++
11
++import("//build/config/linux/pkg_config.gni")
12
++import("//build/shim_headers.gni")
13
++
14
++pkg_config("system_libusb") {
15
++ packages = [ "libusb-1.0" ]
16
++}
17
++
18
++shim_headers("libusb_shim") {
19
++ root_path = "src/libusb"
20
++ headers = [
21
++ "libusb.h",
22
++ ]
23
++}
24
++
25
++source_set("libusb") {
26
++ deps = [
27
++ ":libusb_shim",
28
++ ]
29
++ public_configs = [ ":system_libusb" ]
30
++}
31
+Index: chromium-70.0.3538.54/build/linux/unbundle/replace_gn_files.py
32
+===================================================================
33
+--- chromium-70.0.3538.54.orig/build/linux/unbundle/replace_gn_files.py
34
++++ chromium-70.0.3538.54/build/linux/unbundle/replace_gn_files.py
35
+@@ -27,6 +27,7 @@ REPLACEMENTS = {
36
+ 'libevent': 'base/third_party/libevent/BUILD.gn',
37
+ 'libjpeg': 'third_party/libjpeg.gni',
38
+ 'libpng': 'third_party/libpng/BUILD.gn',
39
++ 'libusb': 'third_party/libusb/BUILD.gn',
40
+ 'libvpx': 'third_party/libvpx/BUILD.gn',
41
+ 'libwebp': 'third_party/libwebp/BUILD.gn',
42
+ 'libxml': 'third_party/libxml/BUILD.gn',
43
chromium-vaapi.patch
Added
74
1
2
+diff -up chromium-88.0.4324.11/chrome/browser/about_flags.cc.accel-mjpeg chromium-88.0.4324.11/chrome/browser/about_flags.cc
3
+--- chromium-88.0.4324.11/chrome/browser/about_flags.cc.accel-mjpeg 2020-11-19 20:51:19.000000000 -0500
4
++++ chromium-88.0.4324.11/chrome/browser/about_flags.cc 2020-11-30 16:14:32.393366384 -0500
5
+@@ -3526,12 +3526,12 @@
6
+ flag_descriptions::kWebXrForceRuntimeDescription, kOsDesktop,
7
+ MULTI_VALUE_TYPE(kWebXrForceRuntimeChoices)},
8
+ #endif // ENABLE_VR
9
+-#if BUILDFLAG(IS_CHROMEOS_ASH)
10
++#if BUILDFLAG(IS_CHROMEOS_ASH) || (defined(OS_LINUX) && !defined(OS_ANDROID))
11
+ {"disable-accelerated-mjpeg-decode",
12
+ flag_descriptions::kAcceleratedMjpegDecodeName,
13
+- flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
14
++ flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS | kOsLinux,
15
+ SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
16
+-#endif // BUILDFLAG(IS_CHROMEOS_ASH)
17
++#endif // BUILDFLAG(IS_CHROMEOS_ASH) || (defined(OS_LINUX) && !defined(OS_ANDROID))
18
+ {"system-keyboard-lock", flag_descriptions::kSystemKeyboardLockName,
19
+ flag_descriptions::kSystemKeyboardLockDescription, kOsDesktop,
20
+ FEATURE_VALUE_TYPE(features::kSystemKeyboardLock)},
21
+diff -up chromium-88.0.4324.11/chrome/browser/flag_descriptions.cc.accel-mjpeg chromium-88.0.4324.11/chrome/browser/flag_descriptions.cc
22
+--- chromium-88.0.4324.11/chrome/browser/flag_descriptions.cc.accel-mjpeg 2020-11-30 16:14:32.393366384 -0500
23
++++ chromium-88.0.4324.11/chrome/browser/flag_descriptions.cc 2020-11-30 16:20:50.174195910 -0500
24
+@@ -3704,12 +3704,24 @@
25
+ "Settings. "
26
+ "See go/betterAM";
27
+
28
++#endif
29
++
30
++// Chrome OS and Linux --------------------------------------------------------
31
++
32
++#if BUILDFLAG(IS_CHROMEOS_ASH) || (defined(OS_LINUX) && !defined(OS_ANDROID))
33
++
34
+ const char kAcceleratedMjpegDecodeName[] =
35
+ "Hardware-accelerated mjpeg decode for captured frame";
36
+ const char kAcceleratedMjpegDecodeDescription[] =
37
+ "Enable hardware-accelerated mjpeg decode for captured frame where "
38
+ "available.";
39
+
40
++#endif
41
++
42
++// Chrome OS ------------------------------------------------------------------
43
++
44
++#if BUILDFLAG(IS_CHROMEOS_ASH)
45
++
46
+ const char kAllowDisableMouseAccelerationName[] =
47
+ "Allow disabling mouse acceleration";
48
+ const char kAllowDisableMouseAccelerationDescription[] =
49
+diff -up chromium-88.0.4324.11/chrome/browser/flag_descriptions.h.accel-mjpeg chromium-88.0.4324.11/chrome/browser/flag_descriptions.h
50
+--- chromium-88.0.4324.11/chrome/browser/flag_descriptions.h.accel-mjpeg 2020-11-30 16:14:32.394366389 -0500
51
++++ chromium-88.0.4324.11/chrome/browser/flag_descriptions.h 2020-11-30 16:22:13.831601058 -0500
52
+@@ -2138,9 +2138,21 @@
53
+ extern const char kAccountManagementFlowsV2Name[];
54
+ extern const char kAccountManagementFlowsV2Description[];
55
+
56
++#endif
57
++
58
++// Chrome OS and Linux --------------------------------------------------------
59
++
60
++#if BUILDFLAG(IS_CHROMEOS_ASH) || (defined(OS_LINUX) && !defined(OS_ANDROID))
61
++
62
+ extern const char kAcceleratedMjpegDecodeName[];
63
+ extern const char kAcceleratedMjpegDecodeDescription[];
64
+
65
++#endif
66
++
67
++#if BUILDFLAG(IS_CHROMEOS_ASH)
68
++
69
++// Chrome OS ------------------------------------------------------------------
70
++
71
+ extern const char kAllowDisableMouseAccelerationName[];
72
+ extern const char kAllowDisableMouseAccelerationDescription[];
73
+
74
exclude_ymp.patch
Added
12
1
2
+--- a/third_party/blink/common/mime_util/mime_util.cc 2013-08-25 10:12:05.428599992 +0200
3
++++ b/third_party/blink/common/mime_util/mime_util.cc 2013-08-25 10:12:05.428599992 +0200
4
+@@ -79,6 +79,7 @@
5
+ "text/x-csv",
6
+ "text/x-vcf",
7
+ "text/rtf",
8
++ "text/x-suse-ymp",
9
+ "text/comma-separated-values",
10
+ "text/csv",
11
+ "text/tab-separated-values",
12
fix_building_widevinecdm_with_chromium.patch
Changed
37
1
2
-diff -urN chromium-67.0.3371.0.old/third_party/widevine/cdm/BUILD.gn chromium-67.0.3371.0/third_party/widevine/cdm/BUILD.gn
3
---- chromium-67.0.3371.0.old/third_party/widevine/cdm/BUILD.gn 2018-03-20 12:06:16.192778982 +0100
4
-+++ chromium-67.0.3371.0/third_party/widevine/cdm/BUILD.gn 2018-03-20 12:09:54.184846595 +0100
5
-@@ -10,12 +10,6 @@
6
- import("//media/media_options.gni")
7
- import("//third_party/widevine/cdm/widevine.gni")
8
-
9
--# Internal Cast builds set enable_widevine=true to bring in Widevine support.
10
--# TODO(xhwang): Support component updated CDM on other platforms and remove this
11
--# assert.
12
--assert(!enable_widevine || is_win || is_mac || is_chromecast,
13
-- "Component updated CDM only supported on Windows and Mac for now.")
14
--
15
- widevine_arch = current_cpu
16
- if (widevine_arch == "x86") {
17
- widevine_arch = "ia32"
18
-diff -urN chromium-67.0.3371.0.old/third_party/widevine/cdm/stub/widevine_cdm_version.h chromium-67.0.3371.0/third_party/widevine/cdm/stub/widevine_cdm_version.h
19
---- chromium-67.0.3371.0.old/third_party/widevine/cdm/stub/widevine_cdm_version.h 2018-03-20 12:06:16.192778982 +0100
20
-+++ chromium-67.0.3371.0/third_party/widevine/cdm/stub/widevine_cdm_version.h 2018-03-20 12:08:24.415172133 +0100
21
-@@ -10,6 +10,7 @@
22
-
23
- #include "third_party/widevine/cdm/widevine_cdm_common.h"
24
-
25
+Index: chromium-79.0.3941.4/third_party/widevine/cdm/widevine_cdm_version.h
26
+===================================================================
27
+--- chromium-79.0.3941.4.orig/third_party/widevine/cdm/widevine_cdm_version.h
28
++++ chromium-79.0.3941.4/third_party/widevine/cdm/widevine_cdm_version.h
29
+@@ -11,5 +11,6 @@
30
+ // If the Widevine CDM is available define the following:
31
+ // - WIDEVINE_CDM_VERSION_STRING (with the version of the CDM that's available
32
+ // as a string, e.g., "1.0.123.456").
33
+#define WIDEVINE_CDM_VERSION_STRING "unknown"
34
- #define WIDEVINE_CDM_AVAILABLE
35
36
#endif // WIDEVINE_CDM_VERSION_H_
37
gcc-enable-lto.patch
Added
57
1
2
+Index: chromium-85.0.4183.69/build/config/BUILDCONFIG.gn
3
+===================================================================
4
+--- chromium-85.0.4183.69.orig/build/config/BUILDCONFIG.gn
5
++++ chromium-85.0.4183.69/build/config/BUILDCONFIG.gn
6
+@@ -130,6 +130,8 @@ declare_args() {
7
+ # separate flags.
8
+ is_official_build = false
9
+
10
++ gcc_lto = false
11
++
12
+ # Set to true when compiling with the Clang compiler.
13
+ is_clang = current_os != "linux" ||
14
+ (current_cpu != "s390x" && current_cpu != "s390" &&
15
+@@ -441,6 +443,12 @@ default_compiler_configs = [
16
+ "//build/config/sanitizers:default_sanitizer_flags",
17
+ ]
18
+
19
++if (gcc_lto) {
20
++ default_compiler_configs += [
21
++ "//build/config/compiler:gcc_lto",
22
++ ]
23
++}
24
++
25
+ if (is_win) {
26
+ default_compiler_configs += [
27
+ "//build/config/win:default_cfg_compiler",
28
+Index: chromium-85.0.4183.69/build/config/compiler/BUILD.gn
29
+===================================================================
30
+--- chromium-85.0.4183.69.orig/build/config/compiler/BUILD.gn
31
++++ chromium-85.0.4183.69/build/config/compiler/BUILD.gn
32
+@@ -1947,6 +1947,10 @@ if (is_win) {
33
+ }
34
+ }
35
+
36
++config("gcc_lto") {
37
++ cflags = [ "-flto" ]
38
++}
39
++
40
+ config("default_stack_frames") {
41
+ if (is_posix || is_fuchsia) {
42
+ if (enable_frame_pointers) {
43
+Index: chromium-85.0.4183.69/sandbox/linux/BUILD.gn
44
+===================================================================
45
+--- chromium-85.0.4183.69.orig/sandbox/linux/BUILD.gn
46
++++ chromium-85.0.4183.69/sandbox/linux/BUILD.gn
47
+@@ -250,6 +250,9 @@ component("seccomp_bpf") {
48
+ "//build:chromeos_buildflags",
49
+ "//sandbox:sandbox_buildflags",
50
+ ]
51
++ if (gcc_lto) {
52
++ configs -= [ "//build/config/compiler:gcc_lto" ]
53
++ }
54
+
55
+ if (is_android) {
56
+ sources += [
57
no-location-leap151.patch
Added
28
1
2
+Index: chromium-86.0.4240.75/base/location.h
3
+===================================================================
4
+--- chromium-86.0.4240.75.orig/base/location.h
5
++++ chromium-86.0.4240.75/base/location.h
6
+@@ -23,7 +23,7 @@ namespace base {
7
+ #define SUPPORTS_LOCATION_BUILTINS \
8
+ (__has_builtin(__builtin_FUNCTION) && __has_builtin(__builtin_FILE) && \
9
+ __has_builtin(__builtin_LINE))
10
+-#elif defined(COMPILER_GCC) && __GNUC__ >= 7
11
++#elif defined(COMPILER_GCC) && __GNUC__ >= 10
12
+ // GCC has supported these for a long time, but they point at the function
13
+ // declaration in the case of default arguments, rather than at the call site.
14
+ #define SUPPORTS_LOCATION_BUILTINS 1
15
+Index: chromium-86.0.4240.75/base/location.cc
16
+===================================================================
17
+--- chromium-86.0.4240.75.orig/base/location.cc
18
++++ chromium-86.0.4240.75/base/location.cc
19
+@@ -92,7 +92,7 @@ NOINLINE Location Location::Current(cons
20
+ #else
21
+ // static
22
+ NOINLINE Location Location::Current() {
23
+- return Location(nullptr, RETURN_ADDRESS());
24
++ return Location("[unknown file]", RETURN_ADDRESS());
25
+ }
26
+ #endif
27
+
28
system-libdrm.patch
Added
15
1
2
+--- a/build/linux/unbundle/libdrm.gn
3
++++ b/build/linux/unbundle/libdrm.gn
4
+@@ -12,6 +12,9 @@
5
+ shim_headers("libdrm_shim") {
6
+ root_path = "src/include"
7
+- headers = [ "drm.h" ]
8
++ headers = [
9
++ "drm.h",
10
++ "drm_fourcc.h",
11
++ ]
12
+ }
13
+
14
+ source_set("libdrm") {
15
BUILD.gn
Deleted
21
1
2
-import("//build/toolchain/gcc_toolchain.gni")
3
-
4
-gcc_toolchain("default") {
5
- cc = getenv("CC")
6
- cxx = getenv("CXX")
7
- ar = "ar"
8
- nm = "nm"
9
- ld = cxx
10
-
11
- extra_cflags = getenv("CFLAGS")
12
- extra_cppflags = getenv("CPPFLAGS")
13
- extra_cxxflags = getenv("CXXFLAGS")
14
- extra_ldflags = getenv("LDFLAGS")
15
-
16
- toolchain_args = {
17
- current_cpu = current_cpu
18
- current_os = current_os
19
- }
20
-}
21
INSTALL.sh
Added
151
1
2
+#!/bin/bash
3
+set -x
4
+while getopts s:l:i: option
5
+do
6
+case "${option}" in
7
+s) STAGEDIR=${OPTARG};;
8
+l) LIBDIR=${OPTARG};;
9
+i) ICUDATAFILE=${OPTARG};;
10
+esac
11
+done
12
+OUTPUTDIR="out/Release"
13
+SHLIB_PERMS="755"
14
+PROGNAME="chrome"
15
+PACKAGE="chromium-browser"
16
+MENUNAME="Chromium Web Browser"
17
+CHANNEL="stable"
18
+INSTALLDIR="${LIBDIR}/chromium"
19
+
20
+install -m 755 -d \
21
+ "${STAGEDIR}/${INSTALLDIR}" \
22
+ "${STAGEDIR}/usr/bin" \
23
+ "${STAGEDIR}/usr/share/applications" \
24
+ "${STAGEDIR}/usr/share/metainfo" \
25
+ "${STAGEDIR}/usr/share/man/man1"
26
+
27
+# app
28
+buildfile="${OUTPUTDIR}/${PROGNAME}"
29
+install -m 755 "${buildfile}" "${STAGEDIR}/${INSTALLDIR}/${PROGNAME}"
30
+
31
+# crashpad
32
+buildfile="${OUTPUTDIR}/crashpad_handler"
33
+install -m 755 "${buildfile}" "${STAGEDIR}/${INSTALLDIR}/crashpad_handler"
34
+
35
+# resources
36
+install -m 644 "${OUTPUTDIR}/resources.pak" "${STAGEDIR}/${INSTALLDIR}/"
37
+install -m 644 "${OUTPUTDIR}/chrome_100_percent.pak" "${STAGEDIR}/${INSTALLDIR}/"
38
+install -m 644 "${OUTPUTDIR}/chrome_200_percent.pak" "${STAGEDIR}/${INSTALLDIR}/"
39
+
40
+# ICU data file; Necessary when the GN icu_use_data_file flag is true.
41
+if [ "x$ICUDATAFILE" == "xtrue" ]; then
42
+ install -m 644 "${OUTPUTDIR}/icudtl.dat" "${STAGEDIR}/${INSTALLDIR}/"
43
+fi
44
+
45
+# V8 snapshot files; Necessary when the GN v8_use_external_startup_data flag
46
+ # is true.
47
+ # Use v8_context_snapshot.bin instead of snapshot_blob.bin if it is available.
48
+ # TODO(crbug.com/764576): Unship snapshot_blob.bin on ChromeOS and drop this branch
49
+install -m 644 "${OUTPUTDIR}/v8_context_snapshot.bin" "${STAGEDIR}/${INSTALLDIR}/"
50
+
51
+# l10n paks
52
+install -m 755 -d "${STAGEDIR}/${INSTALLDIR}/locales/"
53
+find "${OUTPUTDIR}/locales" -type f -name '*.pak' -print -exec \
54
+ cp -a {} "${STAGEDIR}/${INSTALLDIR}/locales/" \;
55
+find "${STAGEDIR}/${INSTALLDIR}/locales" -type f -print -exec chmod 644 {} \;
56
+
57
+# MEI Preload
58
+if [ -f "${OUTPUTDIR}/MEIPreload/manifest.json" ]; then
59
+ install -m 755 -d "${STAGEDIR}/${INSTALLDIR}/MEIPreload/"
60
+ install -m 644 "${OUTPUTDIR}/MEIPreload/manifest.json" "${STAGEDIR}/${INSTALLDIR}/MEIPreload/"
61
+ install -m 644 "${OUTPUTDIR}/MEIPreload/preloaded_data.pb" "${STAGEDIR}/${INSTALLDIR}/MEIPreload/"
62
+fi
63
+
64
+# ANGLE
65
+if [ -f "${OUTPUTDIR}/libEGL.so" ]; then
66
+ for file in libEGL.so libGLESv2.so;
67
+ do
68
+ buildfile="${OUTPUTDIR}/${file}"
69
+ install -m ${SHLIB_PERMS} "${buildfile}" "${STAGEDIR}/${INSTALLDIR}/${file}"
70
+ done
71
+fi
72
+
73
+# ANGLE's libvulkan library
74
+if [ -f "${OUTPUTDIR}/libvulkan.so.1" ]; then
75
+ file="libvulkan.so.1"
76
+ buildfile="${OUTPUTDIR}/${file}"
77
+ install -m 755 "${buildfile}" "${STAGEDIR}/${INSTALLDIR}/${file}"
78
+fi
79
+
80
+# SwiftShader ES
81
+if [ -f "${OUTPUTDIR}/swiftshader/libEGL.so" ]; then
82
+ install -m 755 -d "${STAGEDIR}/${INSTALLDIR}/swiftshader/"
83
+ for file in libEGL.so libGLESv2.so;
84
+ do
85
+ buildfile="${OUTPUTDIR}/swiftshader/${file}"
86
+ install -m ${SHLIB_PERMS} "${buildfile}" "${STAGEDIR}/${INSTALLDIR}/swiftshader/${file}"
87
+ done
88
+fi
89
+
90
+# SwiftShader VK
91
+if [ -f "${OUTPUTDIR}/libvk_swiftshader.so" ]; then
92
+ install -m 755 -d "${STAGEDIR}/${INSTALLDIR}/"
93
+ file="libvk_swiftshader.so"
94
+ buildfile="${OUTPUTDIR}/${file}"
95
+ install -m ${SHLIB_PERMS} "${buildfile}" "${STAGEDIR}/${INSTALLDIR}/${file}"
96
+fi
97
+if [ -f "${OUTPUTDIR}/vk_swiftshader_icd.json" ]; then
98
+# Install the ICD json file to point ANGLE to libvk_swiftshader.so
99
+ install -m 644 "${OUTPUTDIR}/vk_swiftshader_icd.json" "${STAGEDIR}/${INSTALLDIR}/"
100
+fi
101
+
102
+# default apps
103
+if [ -d "${OUTPUTDIR}/default_apps" ]; then
104
+ cp -a "${OUTPUTDIR}/default_apps" "${STAGEDIR}/${INSTALLDIR}/"
105
+ find "${STAGEDIR}/${INSTALLDIR}/default_apps" -type d -exec chmod 755 '{}' \;
106
+ find "${STAGEDIR}/${INSTALLDIR}/default_apps" -type f -exec chmod 644 '{}' \;
107
+fi
108
+
109
+# launcher script and symlink
110
+sed \
111
+ -e "s#@@PROGNAME@@#${PROGNAME}#g" \
112
+ -e "s#@@CHANNEL@@#${CHANNEL}#g" \
113
+ "chrome/installer/linux/common/wrapper" > "${STAGEDIR}/${INSTALLDIR}/chrome-wrapper"
114
+chmod 755 "${STAGEDIR}/${INSTALLDIR}/chrome-wrapper"
115
+ln -s "${INSTALLDIR}/chrome-wrapper" "${STAGEDIR}/usr/bin/${PACKAGE}"
116
+
117
+# app icons
118
+for size in 16 32;
119
+do
120
+ icon="chrome/app/theme/default_100_percent/chromium/product_logo_${size}.png"
121
+ installpath="${STAGEDIR}/usr/share/icons/hicolor/${size}x${size}/apps/chromium-browser.png"
122
+ install -D -m 644 ${icon} ${installpath}
123
+done
124
+for size in 24 48 64 128 256;
125
+do
126
+ icon="chrome/app/theme/chromium/product_logo_${size}.png"
127
+ installpath="${STAGEDIR}/usr/share/icons/hicolor/${size}x${size}/apps/chromium-browser.png"
128
+ install -D -m 644 ${icon} ${installpath}
129
+done
130
+
131
+# desktop integration
132
+## AppData
133
+install -m 644 "chrome/installer/linux/common/chromium-browser/chromium-browser.appdata.xml" \
134
+"${STAGEDIR}/usr/share/metainfo/${PACKAGE}.appdata.xml"
135
+
136
+## Desktop file
137
+sed \
138
+ -e "s#@@MENUNAME@@#${MENUNAME}#g" \
139
+ -e "s#@@USR_BIN_SYMLINK_NAME@@#${PACKAGE}#g" \
140
+ -e "s#@@PACKAGE@@#${PACKAGE}#g" \
141
+ "chrome/installer/linux/common/desktop.template" > "${STAGEDIR}/usr/share/applications/${PACKAGE}.desktop"
142
+chmod 644 "${STAGEDIR}/usr/share/applications/${PACKAGE}.desktop"
143
+
144
+# documentation
145
+sed \
146
+ -e "s#@@MENUNAME@@#${MENUNAME}#g" \
147
+ -e "s#@@PACKAGE@@#${PACKAGE}#g" \
148
+ "chrome/app/resources/manpage.1.in" > "${STAGEDIR}/usr/share/man/man1/${PACKAGE}.1"
149
+gzip -9n "${STAGEDIR}/usr/share/man/man1/${PACKAGE}.1"
150
+chmod 644 "${STAGEDIR}/usr/share/man/man1/${PACKAGE}.1.gz"
151
README.SUSE
Added
10
1
2
+README for SUSE packagers
3
+=========================
4
+Patches for chromium can typically be found in the following places:
5
+
6
+Stephan Hartmann - https://github.com/stha09/chromium-patches/releases
7
+Gentoo - https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files
8
+Fedora - https://src.fedoraproject.org/rpms/chromium/tree/rawhide
9
+Arch - https://github.com/archlinux/svntogit-packages/tree/packages/chromium/trunk
10
_constraints
Changed
31
1
2
<constraints>
3
<hardware>
4
<disk>
5
- <size unit="G">6</size>
6
+ <size unit="G">16</size>
7
</disk>
8
- <memory>
9
- <size unit="G">2</size>
10
- </memory>
11
+ <physicalmemory>
12
+ <size unit="G">4</size>
13
+ </physicalmemory>
14
</hardware>
15
+ <overwrite>
16
+ <conditions>
17
+ <arch>x86_64</arch>
18
+ </conditions>
19
+ <hardware>
20
+ <memory>
21
+ <size unit="G">4</size>
22
+ </memory>
23
+ </hardware>
24
+ </overwrite>
25
+ <overwrite>
26
+ <conditions>
27
+ <arch>aarch64</arch>
28
+ </conditions>
29
+ </overwrite>
30
</constraints>
31
chromium-69.0.3497.100.tar.xz -> chromium-93.0.4577.82.tar.xz
Changed
chromium-symbolic.svg
Added
10
1
2
+<svg width="16" height="16" version="1.1" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg">
3
+ <g transform="translate(0 -292.77)" fill-rule="evenodd">
4
+ <path transform="translate(0 292.77)" d="m8 0c-2.9688 0-5.5431 1.6049-6.9238 3.9941l3.4629 5.998 0.0058594-0.0039063c-0.33743-0.587-0.54492-1.2599-0.54492-1.9883 0-2.216 1.784-4 4-4h6.918l0.007812-0.0039062c-1.3803-2.3906-3.956-3.9961-6.9258-3.9961zm-6.9238 3.9941c-0.16618 0.28757-0.31369 0.58593-0.44336 0.89453 0.12852-0.30638 0.27614-0.60523 0.44336-0.89453zm-0.81445 2.002c-0.063348 0.24696-0.11637 0.49818-0.15625 0.75391 0.040321-0.25396 0.09178-0.50523 0.15625-0.75391zm-0.19336 1.002c-0.031547 0.25414-0.049317 0.51231-0.056641 0.77344 0.0074787-0.25874 0.024224-0.51758 0.056641-0.77344zm-0.066406 0.96289c-6.3137e-5 0.013175-0.0019531 0.025872-0.0019531 0.039062 0 0.31231 0.022151 0.61909 0.056641 0.92188-0.037536-0.3208-0.05629-0.64074-0.054688-0.96094zm0.076172 1.1016c0.038415 0.29125 0.093448 0.5771 0.16211 0.85742-0.070883-0.28406-0.12335-0.57082-0.16211-0.85742zm0.19727 0.99805c0.091086 0.3385 0.20625 0.67364 0.34375 1.0039-0.13429-0.32476-0.25247-0.65856-0.34375-1.0039zm0.34375 1.0039c0.093646 0.22647 0.20902 0.4391 0.32227 0.6543-0.11418-0.21652-0.22997-0.43262-0.32227-0.6543zm0.32227 0.6543c0.047723 0.090496 0.083121 0.18399 0.13477 0.27344 0.0068955 0.011943 0.016491 0.021308 0.023438 0.033203-0.057828-0.099177-0.10459-0.20477-0.1582-0.30664zm0.1582 0.30664c0.18369 0.31503 0.38946 0.61488 0.61328 0.90039-0.22081-0.2833-0.42705-0.5815-0.61328-0.90039zm0.67383 0.98828c0.24745 0.30711 0.51472 0.59779 0.80469 0.86523-0.286-0.26475-0.5556-0.55416-0.80469-0.86523zm1.4141 1.373c0.19915 0.15005 0.40407 0.29066 0.61719 0.42188-0.21156-0.1305-0.41738-0.27099-0.61719-0.42188zm0.64844 0.44141c0.20201 0.12309 0.40966 0.23664 0.62305 0.3418-0.21134-0.10449-0.42088-0.21838-0.62305-0.3418zm0.71484 0.38672c0.19014 0.090687 0.38386 0.17422 0.58203 0.25-0.1972-0.075792-0.39101-0.15859-0.58203-0.25zm0.74609 0.30859c0.18385 0.065711 0.36872 0.12728 0.55859 0.17969-0.18849-0.052523-0.37433-0.11344-0.55859-0.17969zm0.75586 0.23047c0.17137 0.042615 0.34392 0.081857 0.51953 0.11328-0.1743-0.031708-0.34783-0.070112-0.51953-0.11328zm0.84375 0.16211c0.14048 0.019266 0.28107 0.038852 0.42383 0.050781-0.1422-0.012166-0.28272-0.031057-0.42383-0.050781zm0.85156 0.072265c0.084408 0.00261 0.16689 0.011719 0.25195 0.011719v-0.007812c-0.084073-4e-6 -0.16806-0.001251-0.25195-0.003907z"/>
5
+ <path transform="translate(0 292.77)" d="m8.2051-0.0039062c-0.067876-0.0018334-0.13533 0.0040042-0.20312 0.0039062 0.36876 8.8644e-5 0.73088 0.02619 1.0859 0.074219-0.29424-0.041037-0.58844-0.070174-0.88281-0.078125zm-0.21289 0.0039062c-0.26615-5.8021e-5 -0.53129 0.014666-0.79492 0.041016 0.26143-0.025824 0.52654-0.040759 0.79492-0.041016zm-0.85156 0.046875c-0.23605 0.025293-0.47073 0.061354-0.70312 0.10742 0.23076-0.045338 0.46557-0.082259 0.70312-0.10742zm1.9727 0.03125c0.29658 0.042337 0.59114 0.10493 0.88477 0.18164-0.28938-0.074218-0.58339-0.13988-0.88477-0.18164zm-2.8145 0.10547c-0.20793 0.045059-0.41353 0.096739-0.61719 0.1582 0.20238-0.060783 0.4083-0.11329 0.61719-0.1582zm4.0117 0.16406c0.17588 0.052879 0.34712 0.11527 0.51758 0.17969-0.17171-0.065602-0.3437-0.12659-0.51758-0.17969zm-4.7949 0.048828c-0.18254 0.059478-0.363 0.12276-0.54102 0.19531 0.17733-0.072143 0.35752-0.13576 0.54102-0.19531zm-0.75195 0.28711c-0.16297 0.071956-0.32421 0.14754-0.48242 0.23047 0.15724-0.082363 0.31917-0.15847 0.48242-0.23047zm6.4824 0.0078125c0.11114 0.049754 0.22028 0.11078 0.33008 0.16602-0.11024-0.055265-0.21697-0.11578-0.33008-0.16602zm-7.1875 0.3457c-0.15224 0.086105-0.30238 0.17512-0.44922 0.27148 0.14627-0.09592 0.29643-0.18512 0.44922-0.27148zm8.332 0.29102c0.12847 0.084776 0.25775 0.1679 0.38086 0.25977-0.12261-0.090957-0.2518-0.17494-0.38086-0.25977zm-8.9746 0.11328c-0.14122 0.098764-0.2788 0.20216-0.41406 0.31055 0.13477-0.10781 0.27232-0.21151 0.41406-0.31055zm9.6836 0.4082c0.14161 0.11775 0.281 0.2381 0.41406 0.36523-0.13289-0.12624-0.27123-0.24721-0.41406-0.36523zm-10.328 0.095703c-0.10925 0.094548-0.21767 0.18998-0.32227 0.29102 0.10418-0.10034 0.21274-0.19643 0.32227-0.29102zm11.002 0.52539c0.18123 0.18967 0.35359 0.38691 0.51562 0.59375-0.16146-0.20541-0.33262-0.40324-0.51562-0.59375zm-11.592 0.039062c-0.087652 0.093206-0.17413 0.18711-0.25781 0.28516 0.083362-0.097301 0.16992-0.19202 0.25781-0.28516zm-0.5332 0.62891c-0.066279 0.086893-0.13213 0.17344-0.19531 0.26367 0.062985-0.089711 0.12878-0.17674 0.19531-0.26367zm12.717 0.015625c0.19435 0.25492 0.36841 0.52294 0.5293 0.79688-0.16178-0.27581-0.3368-0.54357-0.5293-0.79688zm-13.176 0.6543c-0.040114 0.065194-0.086473 0.12468-0.125 0.19141l0.0058594 0.0039062c0.038163-0.06626 0.07915-0.13028 0.11914-0.19531zm6.8105 0.19141c2.216 0 4 1.784 4 4 0 0.73147-0.2087 1.4074-0.54883 1.9961l0.005859 0.0039062-0.13867 0.24023-3.3184 5.75v0.009766c2.7599-0.001023 5.4372-1.4285 6.9219-4 1.4856-2.5731 1.3819-5.6088 0-8h-6.9219z" opacity=".55"/>
6
+ <path transform="translate(0 292.77)" d="m7.9922 0c-0.26839 2e-4 -0.53349 0.015216-0.79492 0.041016 0.26363-0.0263 0.52877-0.041076 0.79492-0.041016zm-0.85156 0.046875c-0.23755 0.02512-0.47236 0.062122-0.70312 0.10742 0.2324-0.04602 0.46708-0.082122 0.70312-0.10742zm-0.8418 0.13672c-0.20888 0.04491-0.41481 0.097403-0.61719 0.1582 0.20366-0.0615 0.40926-0.1131 0.61719-0.1582zm4.0117 0.16406c0.17388 0.0531 0.34587 0.11409 0.51758 0.17969-0.17045-0.06442-0.3417-0.12679-0.51758-0.17969zm-4.7949 0.048828c-0.18349 0.05955-0.36369 0.12321-0.54102 0.19531 0.17802-0.07256 0.35848-0.13581 0.54102-0.19531zm-0.75195 0.28711c-0.16325 0.07199-0.32518 0.14807-0.48242 0.23047 0.15821-0.08294 0.31945-0.15847 0.48242-0.23047zm-0.70508 0.35352c-0.15279 0.08637-0.30295 0.17558-0.44922 0.27148 0.14684-0.09637 0.29698-0.18538 0.44922-0.27148zm8.332 0.29102c0.12906 0.08482 0.25825 0.16877 0.38086 0.25977-0.12311-0.09186-0.25239-0.17497-0.38086-0.25977zm-8.9746 0.11328c-0.14174 0.09904-0.2793 0.20274-0.41406 0.31055 0.13527-0.10839 0.27284-0.21175 0.41406-0.31055zm9.6836 0.4082c0.14284 0.11803 0.28117 0.23899 0.41406 0.36523-0.13307-0.12714-0.27246-0.24748-0.41406-0.36523zm-10.328 0.095703c-0.10952 0.09459-0.21808 0.19069-0.32227 0.29102 0.1046-0.10103 0.21302-0.19652 0.32227-0.29102zm11.002 0.52539c0.18301 0.1905 0.35417 0.38834 0.51562 0.59375-0.16203-0.20684-0.3344-0.40409-0.51562-0.59375zm-11.592 0.039062c-0.08789 0.09314-0.17445 0.18786-0.25781 0.28516 0.083679-0.09804 0.17016-0.19196 0.25781-0.28516zm-0.5332 0.62891c-0.066533 0.08694-0.13233 0.17397-0.19531 0.26367 0.063183-0.09023 0.12903-0.17677 0.19531-0.26367zm13.283 0.85352-0.013672 0.0078125h0.003906c1.0361 1.7929 1.3524 3.9472 0.82031 5.998 0.51081-1.9573 0.28609-4.1064-0.81055-6.0059zm-13.855 0.0019531c-0.0019132 0.0032892-0.0039597 0.0064654-0.0058594 0.0097656-1.3768 2.3898-1.4778 5.4185 0.0058594 7.9883 1.4849 2.572 4.1633 3.9999 6.9238 4v-0.001954l3.3184-5.75c-0.71742 1.0637-1.9334 1.7598-3.3184 1.7598-1.4877 0-2.7659-0.81274-3.4551-2.0117l-0.0058594 0.0039063-3.4629-5.998zm10.242 6.2461 0.13867-0.24023-0.005859-0.0039062c-0.046283 0.080108-0.081254 0.1677-0.13281 0.24414zm4.4238-0.23828c-0.17464 0.67175-0.44309 1.3319-0.80469 1.9648 0.3561-0.6189 0.62541-1.2792 0.80469-1.9648zm-0.80469 1.9648c-0.008878 0.01543-0.016406 0.031498-0.025391 0.046875 0.002853-0.004915 0.006923-0.008748 0.009766-0.013672 0.006215-0.010765 0.009465-0.022422 0.015625-0.033203zm-0.025391 0.046875c-0.16138 0.27807-0.34026 0.53954-0.5293 0.78906 0.19208-0.25377 0.37016-0.51671 0.5293-0.78906zm-0.5293 0.78906c-0.034882 0.046087-0.07147 0.09131-0.10742 0.13672 0.036023-0.045459 0.072258-0.090304 0.10742-0.13672zm-0.10742 0.13672c-0.19263 0.24309-0.39299 0.47669-0.60742 0.69336 0.21926-0.21926 0.4175-0.45347 0.60742-0.69336zm-0.75977 0.84375c-0.16802 0.16083-0.34574 0.30905-0.52539 0.45312 0.18255-0.14513 0.35845-0.29493 0.52539-0.45312zm-0.79492 0.66992c-0.19636 0.14387-0.40011 0.27399-0.60742 0.39844 0.20953-0.12546 0.41362-0.25756 0.60742-0.39844zm-1.1328 0.68164c-0.13759 0.069106-0.27496 0.1383-0.41602 0.19922 0.14014-0.060811 0.27798-0.12975 0.41602-0.19922zm-0.8125 0.35547c-0.17664 0.065328-0.35449 0.127-0.53516 0.17969 0.17969-0.052782 0.3577-0.11362 0.53516-0.17969zm-0.86914 0.27148c-0.23843 0.058475-0.47953 0.1042-0.72266 0.14062 0.2417-0.036415 0.48287-0.081371 0.72266-0.14062zm-0.90625 0.17383c-0.30489 0.038433-0.61309 0.055452-0.92188 0.058594 0.30718-0.003008 0.61446-0.019611 0.92188-0.058594z" opacity=".7"/>
7
+ <rect x="5" y="297.77" width="6" height="6" ry="3" opacity=".85"/>
8
+ </g>
9
+</svg>
10
highway-0.12.2.tar.gz
Added
master_preferences
Added
33
1
2
+{
3
+ "distribution": {
4
+ "skip_first_run_ui": true,
5
+ "alternate_shortcut_text": false,
6
+ "oem_bubble": true,
7
+ "chrome_shortcut_icon_index": 0,
8
+ "create_all_shortcuts": true,
9
+ "show_welcome_page": true,
10
+ "make_chrome_default": false,
11
+ "make_chrome_default_for_user": false,
12
+ "system_level": false,
13
+ "verbose_logging": false
14
+ },
15
+ "download": {
16
+ "extensions_to_open": "ymp"
17
+ },
18
+ "browser": {
19
+ "show_home_button": true,
20
+ "check_default_browser": false,
21
+ "custom_chrome_frame": true
22
+ },
23
+ "bookmark_bar": {
24
+ "show_on_all_tabs": true
25
+ },
26
+ "first_run_tabs": [
27
+ "https://search.opensuse.org/",
28
+ "https://www.google.com/chrome/"
29
+ ],
30
+ "homepage": "https://search.opensuse.org/",
31
+ "homepage_is_newtabpage": false
32
+}
33