Gentoo Archives: gentoo-commits

From: Mike Gilbert <floppym@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: www-client/chromium/, www-client/chromium/files/
Date: Mon, 01 Jun 2020 17:34:42
Message-Id: 1591032860.aca4cd0b6fc95026da9ff7be4678f1e9ff92ffc3.floppym@gentoo
1 commit: aca4cd0b6fc95026da9ff7be4678f1e9ff92ffc3
2 Author: Stephan Hartmann <stha09 <AT> googlemail <DOT> com>
3 AuthorDate: Mon Jun 1 07:57:03 2020 +0000
4 Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org>
5 CommitDate: Mon Jun 1 17:34:20 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=aca4cd0b
7
8 www-client/chromium: beta channel bump to 84.0.4147.30
9
10 Package-Manager: Portage-2.3.99, Repoman-2.3.22
11 Signed-off-by: Stephan Hartmann <stha09 <AT> googlemail.com>
12 Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>
13
14 www-client/chromium/Manifest | 3 +-
15 ....4136.5.ebuild => chromium-84.0.4147.30.ebuild} | 37 ++----
16 .../chromium/files/chromium-84-gcc-include.patch | 145 --------------------
17 .../chromium/files/chromium-84-gcc-noexcept.patch | 57 --------
18 .../chromium/files/chromium-84-gcc-template.patch | 146 ---------------------
19 .../files/chromium-84-gcc-unique_ptr.patch | 29 ----
20 .../chromium/files/chromium-84-template.patch | 80 -----------
21 7 files changed, 11 insertions(+), 486 deletions(-)
22
23 diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest
24 index a37ec5e53f6..1966ce66d89 100644
25 --- a/www-client/chromium/Manifest
26 +++ b/www-client/chromium/Manifest
27 @@ -1,4 +1,5 @@
28 DIST chromium-83.0.4103.61.tar.xz 802558244 BLAKE2B d71ec15bea46438dccda49bb5d8ca0013e89e6876470aba077fbad70578a6f4d9ffb71150a9f0c676740be1cf3a7c681077e39ee9cf961b508b8a59167b4b949 SHA512 0fa179bdc61399c3e15e03ce1e720ca6487df603712689ffd4161ef1103c131b0baaedca3c7d706dfdcd2fa3328337cc4a807c0478a429f88358e512cfacbcba
29 -DIST chromium-84.0.4136.5.tar.xz 840308252 BLAKE2B 3f10ea5dbb48dd2a39cfb8d39289ad439d0257bea6e40ff130d427f96252890a6164a8dae3b5d30b7e74bcb87815055a6f27826add3ef5e9849e72c6a7dcc3b1 SHA512 9b6285ec2bb9790b8e1593473f8e1f2642a6fa851fb5645c282c48911dffabc2107aa99c90b6d6450eb8c0dc38daa089c514801921bc1ac782b25e34d9b8fd84
30 +DIST chromium-84-patchset-1.tar.xz 17652 BLAKE2B 17008a5d7b81fd9dd3934f815922a10c4b33bd4b3a13b350011d60627133f2179c2e70a6e74ef11ddf9b68b83b988fad3df15e9307f871006ccb7aca52c819da SHA512 2a45183c60794256b150bf67aa8395bab113e77b338775f737ebd8a822fd17be776b786ad12ffa759774a8876e0976a1c285ef90257e9532cfd9952baba7096d
31 +DIST chromium-84.0.4147.30.tar.xz 845012272 BLAKE2B 2f88b57f3411886fe69731de8dee0bfdec7877ccc69e64acb697c1c3fe391ceadef429a636be2fa9c17059c0cdbf5339692bbc542c6e82727ca4c3917e3e6679 SHA512 6188727638c64fb1e9cf1760b038ee196853b0460dce0a8d5ce9ed890a08c6da19c1619b847b1f9462fb97942909ac44404d78acfbb8a26ffce2ef3d7eca5dc6
32 DIST setuptools-44.1.0.zip 858569 BLAKE2B f59f154e121502a731e51294ccd293d60ffccadacf51e23b53bf7ceba38858948b86783238061136c827ac3373ea7ea8e6253d4bb53f3f1dd69284568ec65a68 SHA512 4dfb0f42d334b835758e865a26ecd1e725711fa2b9c38ddc273b8b3849fba04527bc97436d11ba1e98f1a42922aa0f0b9032e32998273c705fac6e10735eacbf
33 DIST xcb-proto-1.14.tar.xz 143384 BLAKE2B 60212b0f0ce039a64a2e6cbbc78564eeffc57cff20987b37dc780d8d97ae888a7dbfbbaadc6e0e4bedfc5d1e360f16318e3825ad8406de668d9c7c66cf7f4b5d SHA512 de66d568163b6da2be9d6c59984f3afa3acd119a781378638045fd68018665ef5c9af98f024e9962ba3eb7c7a4d85c27ba70ffafceb2324ccc6940f34de16690
34
35 diff --git a/www-client/chromium/chromium-84.0.4136.5.ebuild b/www-client/chromium/chromium-84.0.4147.30.ebuild
36 similarity index 96%
37 rename from www-client/chromium/chromium-84.0.4136.5.ebuild
38 rename to www-client/chromium/chromium-84.0.4147.30.ebuild
39 index 58360a0999f..7e7c4d23de9 100644
40 --- a/www-client/chromium/chromium-84.0.4136.5.ebuild
41 +++ b/www-client/chromium/chromium-84.0.4147.30.ebuild
42 @@ -13,9 +13,12 @@ inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-util
43 DESCRIPTION="Open-source version of Google Chrome web browser"
44 HOMEPAGE="https://chromium.org/"
45 XCB_PROTO_VERSION="1.14"
46 +PATCHSET="1"
47 +PATCHSET_NAME="chromium-$(ver_cut 1)-patchset-${PATCHSET}"
48 SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
49 https://files.pythonhosted.org/packages/ed/7b/bbf89ca71e722b7f9464ebffe4b5ee20a9e5c9a555a56e2d3914bb9119a6/setuptools-44.1.0.zip
50 - https://www.x.org/releases/individual/proto/xcb-proto-${XCB_PROTO_VERSION}.tar.xz"
51 + https://www.x.org/releases/individual/proto/xcb-proto-${XCB_PROTO_VERSION}.tar.xz
52 + https://github.com/stha09/chromium-patches/releases/download/${PATCHSET_NAME}/${PATCHSET_NAME}.tar.xz"
53
54 LICENSE="BSD"
55 SLOT="0"
56 @@ -100,10 +103,6 @@ BDEPEND="
57 sys-devel/flex
58 virtual/pkgconfig
59 closure-compile? ( virtual/jre )
60 - !system-libvpx? (
61 - amd64? ( dev-lang/yasm )
62 - x86? ( dev-lang/yasm )
63 - )
64 "
65
66 : ${CHROMIUM_FORCE_CLANG=no}
67 @@ -116,10 +115,6 @@ fi
68 if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
69 RDEPEND+=" >=sys-libs/libcxx-9"
70 DEPEND+=" >=sys-libs/libcxx-9"
71 - BDEPEND+="
72 - amd64? ( dev-lang/yasm )
73 - x86? ( dev-lang/yasm )
74 - "
75 else
76 COMMON_DEPEND="
77 app-arch/snappy:=
78 @@ -165,23 +160,6 @@ them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
79 in /etc/chromium/default.
80 "
81
82 -PATCHES=(
83 - "${FILESDIR}/chromium-compiler-r12.patch"
84 - "${FILESDIR}/chromium-fix-char_traits.patch"
85 - "${FILESDIR}/chromium-blink-style_format.patch"
86 - "${FILESDIR}/chromium-78-protobuf-export.patch"
87 - "${FILESDIR}/chromium-79-gcc-alignas.patch"
88 - "${FILESDIR}/chromium-80-gcc-quiche.patch"
89 - "${FILESDIR}/chromium-82-gcc-template.patch"
90 - "${FILESDIR}/chromium-83-gcc-serviceworker.patch"
91 - "${FILESDIR}/chromium-83-gcc-10.patch"
92 - "${FILESDIR}/chromium-84-gcc-noexcept.patch"
93 - "${FILESDIR}/chromium-84-gcc-template.patch"
94 - "${FILESDIR}/chromium-84-gcc-include.patch"
95 - "${FILESDIR}/chromium-84-gcc-unique_ptr.patch"
96 - "${FILESDIR}/chromium-84-template.patch"
97 -)
98 -
99 pre_build_checks() {
100 if [[ ${MERGE_TYPE} != binary ]]; then
101 local -x CPP="$(tc-getCXX) -E"
102 @@ -227,6 +205,8 @@ src_prepare() {
103 # Calling this here supports resumption via FEATURES=keepwork
104 python_setup
105
106 + eapply "${WORKDIR}/patches"
107 +
108 default
109
110 mkdir -p third_party/node/linux/node-linux-x64/bin || die
111 @@ -267,7 +247,6 @@ src_prepare() {
112 third_party/angle/third_party/vulkan-loader
113 third_party/angle/third_party/vulkan-tools
114 third_party/angle/third_party/vulkan-validation-layers
115 - third_party/angle/third_party/VulkanMemoryAllocator
116 third_party/apple_apsl
117 third_party/axe-core
118 third_party/blink
119 @@ -304,6 +283,7 @@ src_prepare() {
120 third_party/depot_tools
121 third_party/devscripts
122 third_party/devtools-frontend
123 + third_party/devtools-frontend/src/front_end/third_party/acorn
124 third_party/devtools-frontend/src/front_end/third_party/codemirror
125 third_party/devtools-frontend/src/front_end/third_party/fabricjs
126 third_party/devtools-frontend/src/front_end/third_party/lighthouse
127 @@ -344,6 +324,7 @@ src_prepare() {
128 third_party/libxml/chromium
129 third_party/libyuv
130 third_party/llvm
131 + third_party/lottie
132 third_party/lss
133 third_party/lzma_sdk
134 third_party/mako
135 @@ -575,7 +556,7 @@ src_configure() {
136 # Never use bundled gold binary. Disable gold linker flags for now.
137 # Do not use bundled clang.
138 # Trying to use gold results in linker crash.
139 - myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
140 + myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
141
142 # Disable forced lld, bug 641556
143 myconf_gn+=" use_lld=false"
144
145 diff --git a/www-client/chromium/files/chromium-84-gcc-include.patch b/www-client/chromium/files/chromium-84-gcc-include.patch
146 deleted file mode 100644
147 index 1c6d96cb9c4..00000000000
148 --- a/www-client/chromium/files/chromium-84-gcc-include.patch
149 +++ /dev/null
150 @@ -1,145 +0,0 @@
151 -From 60e856c553f4532c2035b087dbdbdde42dbb5f09 Mon Sep 17 00:00:00 2001
152 -From: Stephan Hartmann <stha09@××××××××××.com>
153 -Date: Sat, 9 May 2020 11:33:04 +0000
154 -Subject: [PATCH] IWYU: memcpy is defined in cstring
155 -
156 ----
157 - cc/base/list_container_helper.cc | 1 +
158 - 1 file changed, 1 insertion(+)
159 -
160 -diff --git a/cc/base/list_container_helper.cc b/cc/base/list_container_helper.cc
161 -index afd386e..7b594b4 100644
162 ---- a/cc/base/list_container_helper.cc
163 -+++ b/cc/base/list_container_helper.cc
164 -@@ -7,6 +7,7 @@
165 - #include <stddef.h>
166 -
167 - #include <algorithm>
168 -+#include <cstring>
169 - #include <vector>
170 -
171 - #include "base/check_op.h"
172 ---
173 -2.26.2
174 -
175 -From 5e20370e4bc1fd3beaa9af62fe27aaedb903bacf Mon Sep 17 00:00:00 2001
176 -From: Piotr Tworek <ptworek@××××.com>
177 -Date: Tue, 05 May 2020 06:06:35 +0000
178 -Subject: [PATCH] Add missing bitset include in web_touch_event.cc.
179 -
180 -The code uses std::bitset, but does not include header declaring it. It
181 -works when using bundled copy of libcxx, but fails when using system
182 -libstdc++ on Linux.
183 -
184 -Change-Id: I8a88078e110b27623b3cdea38c94012ba4050ee7
185 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2179123
186 -Reviewed-by: Jeremy Roman <jbroman@××××××××.org>
187 -Commit-Queue: Piotr Tworek <ptworek@××××.com>
188 -Cr-Commit-Position: refs/heads/master@{#765415}
189 ----
190 -
191 -diff --git a/third_party/blink/common/input/web_touch_event.cc b/third_party/blink/common/input/web_touch_event.cc
192 -index 7ef37fec..aa054f9 100644
193 ---- a/third_party/blink/common/input/web_touch_event.cc
194 -+++ b/third_party/blink/common/input/web_touch_event.cc
195 -@@ -2,6 +2,8 @@
196 - // Use of this source code is governed by a BSD-style license that can be
197 - // found in the LICENSE file.
198 -
199 -+#include <bitset>
200 -+
201 - #include "third_party/blink/public/common/input/web_touch_event.h"
202 -
203 - namespace blink {
204 -
205 -From effd506ce070d58e731bd6086681b9cded8573ed Mon Sep 17 00:00:00 2001
206 -From: Stephan Hartmann <stha09@××××××××××.com>
207 -Date: Sun, 10 May 2020 07:24:38 +0000
208 -Subject: [PATCH] IWYU: add a bunch of missing cstring includes
209 -
210 ----
211 - .../crashpad/snapshot/minidump/minidump_context_converter.cc | 2 ++
212 - third_party/crashpad/crashpad/util/linux/ptrace_client.cc | 1 +
213 - .../crashpad/crashpad/util/net/http_multipart_builder.cc | 1 +
214 - third_party/crashpad/crashpad/util/net/http_transport_socket.cc | 2 ++
215 - third_party/crashpad/crashpad/util/process/process_memory.cc | 1 +
216 - third_party/crashpad/crashpad/util/stream/log_output_stream.cc | 1 +
217 - 6 files changed, 8 insertions(+)
218 -
219 -diff --git a/third_party/crashpad/crashpad/snapshot/minidump/minidump_context_converter.cc b/third_party/crashpad/crashpad/snapshot/minidump/minidump_context_converter.cc
220 -index 0c840deac..1d163b42f 100644
221 ---- a/third_party/crashpad/crashpad/snapshot/minidump/minidump_context_converter.cc
222 -+++ b/third_party/crashpad/crashpad/snapshot/minidump/minidump_context_converter.cc
223 -@@ -14,6 +14,8 @@
224 -
225 - #include "snapshot/minidump/minidump_context_converter.h"
226 -
227 -+#include <cstring>
228 -+
229 - #include "base/stl_util.h"
230 - #include "minidump/minidump_context.h"
231 -
232 -diff --git a/third_party/crashpad/crashpad/util/linux/ptrace_client.cc b/third_party/crashpad/crashpad/util/linux/ptrace_client.cc
233 -index f097ad985..e91ce2eca 100644
234 ---- a/third_party/crashpad/crashpad/util/linux/ptrace_client.cc
235 -+++ b/third_party/crashpad/crashpad/util/linux/ptrace_client.cc
236 -@@ -17,6 +17,7 @@
237 - #include <errno.h>
238 - #include <stdio.h>
239 -
240 -+#include <cstring>
241 - #include <string>
242 -
243 - #include "base/logging.h"
244 -diff --git a/third_party/crashpad/crashpad/util/net/http_multipart_builder.cc b/third_party/crashpad/crashpad/util/net/http_multipart_builder.cc
245 -index 267960b27..8ed7edc2f 100644
246 ---- a/third_party/crashpad/crashpad/util/net/http_multipart_builder.cc
247 -+++ b/third_party/crashpad/crashpad/util/net/http_multipart_builder.cc
248 -@@ -16,6 +16,7 @@
249 -
250 - #include <sys/types.h>
251 -
252 -+#include <cstring>
253 - #include <utility>
254 - #include <vector>
255 -
256 -diff --git a/third_party/crashpad/crashpad/util/net/http_transport_socket.cc b/third_party/crashpad/crashpad/util/net/http_transport_socket.cc
257 -index 4dd01b6e7..60cd60c17 100644
258 ---- a/third_party/crashpad/crashpad/util/net/http_transport_socket.cc
259 -+++ b/third_party/crashpad/crashpad/util/net/http_transport_socket.cc
260 -@@ -19,6 +19,8 @@
261 - #include <poll.h>
262 - #include <sys/socket.h>
263 -
264 -+#include <cstring>
265 -+
266 - #include "base/logging.h"
267 - #include "base/macros.h"
268 - #include "base/numerics/safe_conversions.h"
269 -diff --git a/third_party/crashpad/crashpad/util/process/process_memory.cc b/third_party/crashpad/crashpad/util/process/process_memory.cc
270 -index ab87b940f..e02bcea81 100644
271 ---- a/third_party/crashpad/crashpad/util/process/process_memory.cc
272 -+++ b/third_party/crashpad/crashpad/util/process/process_memory.cc
273 -@@ -15,6 +15,7 @@
274 - #include "util/process/process_memory.h"
275 -
276 - #include <algorithm>
277 -+#include <cstring>
278 -
279 - #include "base/logging.h"
280 - #include "util/numeric/safe_assignment.h"
281 -diff --git a/third_party/crashpad/crashpad/util/stream/log_output_stream.cc b/third_party/crashpad/crashpad/util/stream/log_output_stream.cc
282 -index 03c0a5a02..45d823aa4 100644
283 ---- a/third_party/crashpad/crashpad/util/stream/log_output_stream.cc
284 -+++ b/third_party/crashpad/crashpad/util/stream/log_output_stream.cc
285 -@@ -15,6 +15,7 @@
286 - #include "util/stream/log_output_stream.h"
287 -
288 - #include <algorithm>
289 -+#include <cstring>
290 -
291 - #include "base/logging.h"
292 -
293 ---
294 -2.26.2
295 -
296
297 diff --git a/www-client/chromium/files/chromium-84-gcc-noexcept.patch b/www-client/chromium/files/chromium-84-gcc-noexcept.patch
298 deleted file mode 100644
299 index e3918ca28f5..00000000000
300 --- a/www-client/chromium/files/chromium-84-gcc-noexcept.patch
301 +++ /dev/null
302 @@ -1,57 +0,0 @@
303 -diff --git a/third_party/blink/public/platform/cross_variant_mojo_util.h b/third_party/blink/public/platform/cross_variant_mojo_util.h
304 -index dee0b95..0c83580 100644
305 ---- a/third_party/blink/public/platform/cross_variant_mojo_util.h
306 -+++ b/third_party/blink/public/platform/cross_variant_mojo_util.h
307 -@@ -124,7 +124,7 @@ class CrossVariantMojoAssociatedReceiver {
308 - ~CrossVariantMojoAssociatedReceiver() = default;
309 -
310 - CrossVariantMojoAssociatedReceiver(
311 -- CrossVariantMojoAssociatedReceiver&&) noexcept = default;
312 -+ CrossVariantMojoAssociatedReceiver&&) = default;
313 - CrossVariantMojoAssociatedReceiver& operator=(
314 - CrossVariantMojoAssociatedReceiver&&) noexcept = default;
315 -
316 -@@ -155,7 +155,7 @@ class CrossVariantMojoAssociatedRemote {
317 - ~CrossVariantMojoAssociatedRemote() = default;
318 -
319 - CrossVariantMojoAssociatedRemote(
320 -- CrossVariantMojoAssociatedRemote&&) noexcept = default;
321 -+ CrossVariantMojoAssociatedRemote&&) = default;
322 - CrossVariantMojoAssociatedRemote& operator=(
323 - CrossVariantMojoAssociatedRemote&&) noexcept = default;
324 -
325 -diff --git a/base/containers/flat_map.h b/base/containers/flat_map.h
326 -index ed82c5d..1af6b40 100644
327 ---- a/base/containers/flat_map.h
328 -+++ b/base/containers/flat_map.h
329 -@@ -202,7 +202,7 @@ class flat_map : public ::base::internal::flat_tree<
330 - ~flat_map() = default;
331 -
332 - flat_map& operator=(const flat_map&) = default;
333 -- flat_map& operator=(flat_map&&) = default;
334 -+ flat_map& operator=(flat_map&&) noexcept = default;
335 - // Takes the first if there are duplicates in the initializer list.
336 - flat_map& operator=(std::initializer_list<value_type> ilist);
337 -
338 -diff --git a/base/containers/flat_tree.h b/base/containers/flat_tree.h
339 -index 9412ff6..8ecc1fa 100644
340 ---- a/base/containers/flat_tree.h
341 -+++ b/base/containers/flat_tree.h
342 -@@ -125,7 +125,7 @@ class flat_tree {
343 - // Assume that move assignment invalidates iterators and references.
344 -
345 - flat_tree& operator=(const flat_tree&);
346 -- flat_tree& operator=(flat_tree&&);
347 -+ flat_tree& operator=(flat_tree&&) noexcept;
348 - // Takes the first if there are duplicates in the initializer list.
349 - flat_tree& operator=(std::initializer_list<value_type> ilist);
350 -
351 -@@ -519,7 +519,7 @@ auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::operator=(
352 -
353 - template <class Key, class Value, class GetKeyFromValue, class KeyCompare>
354 - auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::operator=(flat_tree &&)
355 -- -> flat_tree& = default;
356 -+ noexcept -> flat_tree& = default;
357 -
358 - template <class Key, class Value, class GetKeyFromValue, class KeyCompare>
359 - auto flat_tree<Key, Value, GetKeyFromValue, KeyCompare>::operator=(
360
361 diff --git a/www-client/chromium/files/chromium-84-gcc-template.patch b/www-client/chromium/files/chromium-84-gcc-template.patch
362 deleted file mode 100644
363 index 15875109d75..00000000000
364 --- a/www-client/chromium/files/chromium-84-gcc-template.patch
365 +++ /dev/null
366 @@ -1,146 +0,0 @@
367 -From 2cd1ba11c364fc0f2f06c5fa3c15ff75ee860966 Mon Sep 17 00:00:00 2001
368 -From: Stephan Hartmann <stha09@××××××××××.com>
369 -Date: Sat, 2 May 2020 16:42:38 +0000
370 -Subject: [PATCH] GCC: fix template specialization in WTF::VectorBuffer
371 -
372 -GCC complains that explicit specialization in non-namespace scope
373 -is happening for InitInlinedBuffer. However, specialization is
374 -not really necessary here with templates and can be moved
375 -into InitInlinedBuffer method without changing generated code.
376 ----
377 - third_party/blink/renderer/platform/wtf/vector.h | 9 ++++-----
378 - 1 file changed, 4 insertions(+), 5 deletions(-)
379 -
380 -diff --git a/third_party/blink/renderer/platform/wtf/vector.h b/third_party/blink/renderer/platform/wtf/vector.h
381 -index 81a4e7b..30ffa89 100644
382 ---- a/third_party/blink/renderer/platform/wtf/vector.h
383 -+++ b/third_party/blink/renderer/platform/wtf/vector.h
384 -@@ -950,11 +950,10 @@ class VectorBuffer : protected VectorBufferBase<T, Allocator> {
385 - return unsafe_reinterpret_cast_ptr<const T*>(inline_buffer_);
386 - }
387 -
388 -- template <bool = Allocator::kIsGarbageCollected>
389 -- void InitInlinedBuffer() {}
390 -- template <>
391 -- void InitInlinedBuffer<true>() {
392 -- memset(&inline_buffer_, 0, kInlineBufferSize);
393 -+ void InitInlinedBuffer() {
394 -+ if ( Allocator::kIsGarbageCollected ) {
395 -+ memset(&inline_buffer_, 0, kInlineBufferSize);
396 -+ }
397 - }
398 -
399 - alignas(T) char inline_buffer_[kInlineBufferSize];
400 ---
401 -2.26.2
402 -From 421aca221966c7d736c4bc5f268a730199f02fb9 Mon Sep 17 00:00:00 2001
403 -From: Stephan Hartmann <stha09@××××××××××.com>
404 -Date: Sat, 9 May 2020 14:59:07 +0000
405 -Subject: [PATCH] GCC: fix template specialization in TraceInCollectionTrait
406 -
407 -GCC complains that explicit specialization in non-namespace scope
408 -is happening for TraceImpl. Move TraceImpl implementations into
409 -different nested classes and select implementation using
410 -std::conditional.
411 ----
412 - .../heap_hash_table_backing.h | 80 ++++++++++---------
413 - 1 file changed, 41 insertions(+), 39 deletions(-)
414 -
415 -diff --git a/third_party/blink/renderer/platform/heap/collection_support/heap_hash_table_backing.h b/third_party/blink/renderer/platform/heap/collection_support/heap_hash_table_backing.h
416 -index a6c73f5..068ab8e 100644
417 ---- a/third_party/blink/renderer/platform/heap/collection_support/heap_hash_table_backing.h
418 -+++ b/third_party/blink/renderer/platform/heap/collection_support/heap_hash_table_backing.h
419 -@@ -241,50 +241,52 @@ struct TraceInCollectionTrait<kNoWeakHandling,
420 -
421 - static void Trace(blink::Visitor* visitor,
422 - const KeyValuePair<Key, Value>& self) {
423 -- TraceImpl(visitor, self);
424 -+ TraceImpl::TraceImpl(visitor, self);
425 - }
426 -
427 - private:
428 -- template <bool = EphemeronHelper::is_ephemeron>
429 -- static void TraceImpl(blink::Visitor* visitor,
430 -- const KeyValuePair<Key, Value>& self);
431 --
432 -- // Strongification of ephemerons, i.e., Weak/Strong and Strong/Weak.
433 -- template <>
434 -- static void TraceImpl<true>(blink::Visitor* visitor,
435 -- const KeyValuePair<Key, Value>& self) {
436 -+ struct TraceImplEphemerons {
437 - // Strongification of ephemerons, i.e., Weak/Strong and Strong/Weak.
438 -- // The helper ensures that helper.key always refers to the weak part and
439 -- // helper.value always refers to the dependent part.
440 -- // We distinguish ephemeron from Weak/Weak and Strong/Strong to allow users
441 -- // to override visitation behavior. An example is creating a heap snapshot,
442 -- // where it is useful to annotate values as being kept alive from keys
443 -- // rather than the table.
444 -- EphemeronHelper helper(&self.key, &self.value);
445 -- // Strongify the weak part.
446 -- blink::TraceCollectionIfEnabled<
447 -- kNoWeakHandling, typename EphemeronHelper::KeyType,
448 -- typename EphemeronHelper::KeyTraits>::Trace(visitor, helper.key);
449 -- // Strongify the dependent part.
450 -- visitor->TraceEphemeron(
451 -- *helper.key, helper.value,
452 -- blink::TraceCollectionIfEnabled<
453 -- kNoWeakHandling, typename EphemeronHelper::ValueType,
454 -- typename EphemeronHelper::ValueTraits>::Trace);
455 -- }
456 -+ static void TraceImpl(blink::Visitor* visitor,
457 -+ const KeyValuePair<Key, Value>& self) {
458 -+ // Strongification of ephemerons, i.e., Weak/Strong and Strong/Weak.
459 -+ // The helper ensures that helper.key always refers to the weak part and
460 -+ // helper.value always refers to the dependent part.
461 -+ // We distinguish ephemeron from Weak/Weak and Strong/Strong to allow users
462 -+ // to override visitation behavior. An example is creating a heap snapshot,
463 -+ // where it is useful to annotate values as being kept alive from keys
464 -+ // rather than the table.
465 -+ EphemeronHelper helper(&self.key, &self.value);
466 -+ // Strongify the weak part.
467 -+ blink::TraceCollectionIfEnabled<
468 -+ kNoWeakHandling, typename EphemeronHelper::KeyType,
469 -+ typename EphemeronHelper::KeyTraits>::Trace(visitor, helper.key);
470 -+ // Strongify the dependent part.
471 -+ visitor->TraceEphemeron(
472 -+ *helper.key, helper.value,
473 -+ blink::TraceCollectionIfEnabled<
474 -+ kNoWeakHandling, typename EphemeronHelper::ValueType,
475 -+ typename EphemeronHelper::ValueTraits>::Trace);
476 -+ }
477 -+ };
478 -
479 -- template <>
480 -- static void TraceImpl<false>(blink::Visitor* visitor,
481 -- const KeyValuePair<Key, Value>& self) {
482 -- // Strongification of non-ephemeron KVP, i.e., Strong/Strong or Weak/Weak.
483 -- // Order does not matter here.
484 -- blink::TraceCollectionIfEnabled<
485 -- kNoWeakHandling, Key, typename Traits::KeyTraits>::Trace(visitor,
486 -- &self.key);
487 -- blink::TraceCollectionIfEnabled<
488 -- kNoWeakHandling, Value,
489 -- typename Traits::ValueTraits>::Trace(visitor, &self.value);
490 -- }
491 -+ struct TraceImplDefault {
492 -+ static void TraceImpl(blink::Visitor* visitor,
493 -+ const KeyValuePair<Key, Value>& self) {
494 -+ // Strongification of non-ephemeron KVP, i.e., Strong/Strong or Weak/Weak.
495 -+ // Order does not matter here.
496 -+ blink::TraceCollectionIfEnabled<
497 -+ kNoWeakHandling, Key, typename Traits::KeyTraits>::Trace(visitor,
498 -+ &self.key);
499 -+ blink::TraceCollectionIfEnabled<
500 -+ kNoWeakHandling, Value,
501 -+ typename Traits::ValueTraits>::Trace(visitor, &self.value);
502 -+ }
503 -+ };
504 -+
505 -+ using TraceImpl = typename std::conditional<EphemeronHelper::is_ephemeron,
506 -+ TraceImplEphemerons,
507 -+ TraceImplDefault>::type;
508 - };
509 -
510 - template <typename Key, typename Value, typename Traits>
511 ---
512 -2.26.2
513
514 diff --git a/www-client/chromium/files/chromium-84-gcc-unique_ptr.patch b/www-client/chromium/files/chromium-84-gcc-unique_ptr.patch
515 deleted file mode 100644
516 index 4fa443bb66a..00000000000
517 --- a/www-client/chromium/files/chromium-84-gcc-unique_ptr.patch
518 +++ /dev/null
519 @@ -1,29 +0,0 @@
520 -From 9b749dc5c7fdb0f4b1bd0df5901beb6af1b81ff1 Mon Sep 17 00:00:00 2001
521 -From: Stephan Hartmann <stha09@××××××××××.com>
522 -Date: Sat, 9 May 2020 16:46:07 +0000
523 -Subject: [PATCH] GCC: fix DCHECK_EQ in NGInlineNode::SegmentScriptRuns
524 -
525 -data->segments is a std::unique_ptr, but underlying CheckOpValueStr
526 -has no overloaded function for std::unique_ptr.
527 -However, overloaded function with const void* exists and can be
528 -used with std::unique_ptr::get().
529 ----
530 - .../blink/renderer/core/layout/ng/inline/ng_inline_node.cc | 2 +-
531 - 1 file changed, 1 insertion(+), 1 deletion(-)
532 -
533 -diff --git a/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc b/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc
534 -index 55ca9e3..ee691df 100644
535 ---- a/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc
536 -+++ b/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc
537 -@@ -891,7 +891,7 @@ void NGInlineNode::SegmentText(NGInlineNodeData* data) {
538 -
539 - // Segment NGInlineItem by script, Emoji, and orientation using RunSegmenter.
540 - void NGInlineNode::SegmentScriptRuns(NGInlineNodeData* data) {
541 -- DCHECK_EQ(data->segments, nullptr);
542 -+ DCHECK_EQ(data->segments.get(), nullptr);
543 -
544 - String& text_content = data->text_content;
545 - if (text_content.IsEmpty()) {
546 ---
547 -2.26.2
548 -
549
550 diff --git a/www-client/chromium/files/chromium-84-template.patch b/www-client/chromium/files/chromium-84-template.patch
551 deleted file mode 100644
552 index 73d277560b1..00000000000
553 --- a/www-client/chromium/files/chromium-84-template.patch
554 +++ /dev/null
555 @@ -1,80 +0,0 @@
556 -From 7ea92bc4f0cbdf68bf8e04b18f560aece9666e9e Mon Sep 17 00:00:00 2001
557 -From: Hans Wennborg <hans@××××××××.org>
558 -Date: Tue, 05 May 2020 18:23:40 +0000
559 -Subject: [PATCH] De-templatize ContentSettingsAgentImpl::GetContentSettingFromRules
560 -
561 -The template definition was not in the header, so callers from outside
562 -content_settings_agent_impl.cc could not instantiate the template,
563 -leading to link errors in some configs (see bug).
564 -
565 -Instead, provide overloads for the two types of URL parameter, and
566 -use a template internally (in the .cc file) as it was before
567 -crrev.com/759360.
568 -
569 -Bug: 1077605
570 -Change-Id: I5c6f1e60ab694d60f7c20ce77a435a1b03e32e08
571 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2181364
572 -Commit-Queue: Hans Wennborg <hans@××××××××.org>
573 -Commit-Queue: Nico Weber <thakis@××××××××.org>
574 -Reviewed-by: Clark DuVall <cduvall@××××××××.org>
575 -Reviewed-by: Nico Weber <thakis@××××××××.org>
576 -Reviewed-by: Balazs Engedy <engedy@××××××××.org>
577 -Auto-Submit: Hans Wennborg <hans@××××××××.org>
578 -Cr-Commit-Position: refs/heads/master@{#765660}
579 ----
580 -
581 -diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc b/components/content_settings/renderer/content_settings_agent_impl.cc
582 -index ffb225a..4e24dc5 100644
583 ---- a/components/content_settings/renderer/content_settings_agent_impl.cc
584 -+++ b/components/content_settings/renderer/content_settings_agent_impl.cc
585 -@@ -169,7 +169,7 @@
586 - }
587 -
588 - template <typename URL>
589 --ContentSetting ContentSettingsAgentImpl::GetContentSettingFromRules(
590 -+ContentSetting GetContentSettingFromRulesImpl(
591 - const ContentSettingsForOneType& rules,
592 - const WebFrame* frame,
593 - const URL& secondary_url) {
594 -@@ -192,6 +192,20 @@
595 - return CONTENT_SETTING_DEFAULT;
596 - }
597 -
598 -+ContentSetting ContentSettingsAgentImpl::GetContentSettingFromRules(
599 -+ const ContentSettingsForOneType& rules,
600 -+ const WebFrame* frame,
601 -+ const GURL& secondary_url) {
602 -+ return GetContentSettingFromRulesImpl(rules, frame, secondary_url);
603 -+}
604 -+
605 -+ContentSetting ContentSettingsAgentImpl::GetContentSettingFromRules(
606 -+ const ContentSettingsForOneType& rules,
607 -+ const WebFrame* frame,
608 -+ const blink::WebURL& secondary_url) {
609 -+ return GetContentSettingFromRulesImpl(rules, frame, secondary_url);
610 -+}
611 -+
612 - void ContentSettingsAgentImpl::BindContentSettingsManager(
613 - mojo::Remote<mojom::ContentSettingsManager>* manager) {
614 - DCHECK(!*manager);
615 -diff --git a/components/content_settings/renderer/content_settings_agent_impl.h b/components/content_settings/renderer/content_settings_agent_impl.h
616 -index b14acfe..2522fdb 100644
617 ---- a/components/content_settings/renderer/content_settings_agent_impl.h
618 -+++ b/components/content_settings/renderer/content_settings_agent_impl.h
619 -@@ -116,11 +116,14 @@
620 -
621 - // Allow passing both WebURL and GURL here, so that we can early return
622 - // without allocating a new backing string if only the default rule matches.
623 -- template <typename URL>
624 - ContentSetting GetContentSettingFromRules(
625 - const ContentSettingsForOneType& rules,
626 - const blink::WebFrame* frame,
627 -- const URL& secondary_url);
628 -+ const GURL& secondary_url);
629 -+ ContentSetting GetContentSettingFromRules(
630 -+ const ContentSettingsForOneType& rules,
631 -+ const blink::WebFrame* frame,
632 -+ const blink::WebURL& secondary_url);
633 -
634 - protected:
635 - // Allow this to be overridden by tests.