diff options
Diffstat (limited to 'www-client/chromium/files')
8 files changed, 427 insertions, 10 deletions
diff --git a/www-client/chromium/files/chromium-77-gcc-alignas.patch b/www-client/chromium/files/chromium-77-gcc-alignas.patch new file mode 100644 index 000000000000..3693ef50bed4 --- /dev/null +++ b/www-client/chromium/files/chromium-77-gcc-alignas.patch @@ -0,0 +1,72 @@ +From 6b633c4b14850df376d5cec571699018772f358e Mon Sep 17 00:00:00 2001 +From: Tomas Popela <tomas.popela@gmail.com> +Date: Tue, 17 Sep 2019 19:48:48 +0000 +Subject: [PATCH] GCC: Can't use alignas() together with __attribute__() + +It's because GCC has problems when mixing the alignas() together with +__attribute__() (that is used to export the symbols). The best +solution is to use ALIGNAS() macro from //base/compiler_specific.h +together with alignof() to have the equal functionality that compiles on +GCC as well as on clang. + +Bug: 819294 +Change-Id: Ieb169592a2965f17a18bfc88d28418eb723a4e5a +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1806735 +Auto-Submit: Tomáš Popela <tomas.popela@gmail.com> +Commit-Queue: Alex Clarke <alexclarke@chromium.org> +Reviewed-by: Alex Clarke <alexclarke@chromium.org> +Cr-Commit-Position: refs/heads/master@{#697330} +--- + +diff --git a/base/task/promise/dependent_list.h b/base/task/promise/dependent_list.h +index 020bdbfc..3245c1c 100644 +--- a/base/task/promise/dependent_list.h ++++ b/base/task/promise/dependent_list.h +@@ -59,7 +59,7 @@ + + // Align Node on an 8-byte boundary to ensure the first 3 bits are 0 and can + // be used to store additional state (see static_asserts below). +- class BASE_EXPORT alignas(8) Node { ++ class BASE_EXPORT ALIGNAS(8) Node { + public: + Node(); + explicit Node(Node&& other) noexcept; + +From 8148fd96ae04a1150a9c6012634dcd2a7335f87a Mon Sep 17 00:00:00 2001 +From: Tomas Popela <tomas.popela@gmail.com> +Date: Tue, 20 Aug 2019 05:23:14 +0000 +Subject: [PATCH] GCC: Can't use alignas() together with __attribute__() + +It's because GCC has problems when mixing the alignas() together with +__attribute__() (that is used to export the symbols). The best +solution is to use ALIGNAS() macro from //base/compiler_specific.h +together with alignof() to have the equal functionality that compiles on +GCC as well as on clang. + +This is a regression after https://crrev.com/659933. + +Bug: 994581 +Change-Id: Ia376866ff9ac57d52d2e907fa325ae5a51893d07 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1758064 +Reviewed-by: Eric Willigers <ericwilligers@chromium.org> +Commit-Queue: Eric Willigers <ericwilligers@chromium.org> +Commit-Queue: Tomáš Popela <tomas.popela@gmail.com> +Auto-Submit: Tomáš Popela <tomas.popela@gmail.com> +Cr-Commit-Position: refs/heads/master@{#688417} +--- + +diff --git a/third_party/blink/renderer/core/css/css_property_value_set.h b/third_party/blink/renderer/core/css/css_property_value_set.h +index 67b353d..1bd404e 100644 +--- a/third_party/blink/renderer/core/css/css_property_value_set.h ++++ b/third_party/blink/renderer/core/css/css_property_value_set.h +@@ -175,8 +175,8 @@ + DISALLOW_COPY_AND_ASSIGN(CSSLazyPropertyParser); + }; + +-class CORE_EXPORT alignas(Member<const CSSValue>) alignas( +- CSSPropertyValueMetadata) ImmutableCSSPropertyValueSet ++class CORE_EXPORT ALIGNAS(alignof(Member<const CSSValue>)) ++ ALIGNAS(alignof(CSSPropertyValueMetadata)) ImmutableCSSPropertyValueSet + : public CSSPropertyValueSet { + public: + ImmutableCSSPropertyValueSet(const CSSPropertyValue*, diff --git a/www-client/chromium/files/chromium-78-gcc-alignas.patch b/www-client/chromium/files/chromium-78-gcc-alignas.patch new file mode 100644 index 000000000000..4f6039c2f5a7 --- /dev/null +++ b/www-client/chromium/files/chromium-78-gcc-alignas.patch @@ -0,0 +1,142 @@ +From 6b633c4b14850df376d5cec571699018772f358e Mon Sep 17 00:00:00 2001 +From: Tomas Popela <tomas.popela@gmail.com> +Date: Tue, 17 Sep 2019 19:48:48 +0000 +Subject: [PATCH] GCC: Can't use alignas() together with __attribute__() + +It's because GCC has problems when mixing the alignas() together with +__attribute__() (that is used to export the symbols). The best +solution is to use ALIGNAS() macro from //base/compiler_specific.h +together with alignof() to have the equal functionality that compiles on +GCC as well as on clang. + +Bug: 819294 +Change-Id: Ieb169592a2965f17a18bfc88d28418eb723a4e5a +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1806735 +Auto-Submit: Tom Popela <tomas.popela@gmail.com> +Commit-Queue: Alex Clarke <alexclarke@chromium.org> +Reviewed-by: Alex Clarke <alexclarke@chromium.org> +Cr-Commit-Position: refs/heads/master@{#697330} +--- + +diff --git a/base/task/promise/dependent_list.h b/base/task/promise/dependent_list.h +index 020bdbfc..3245c1c 100644 +--- a/base/task/promise/dependent_list.h ++++ b/base/task/promise/dependent_list.h +@@ -59,7 +59,7 @@ + + // Align Node on an 8-byte boundary to ensure the first 3 bits are 0 and can + // be used to store additional state (see static_asserts below). +- class BASE_EXPORT alignas(8) Node { ++ class BASE_EXPORT ALIGNAS(8) Node { + public: + Node(); + explicit Node(Node&& other) noexcept; + +Re-use chromium alignas workaround in protobuf. +--- + +diff --git a/third_party/protobuf/src/google/protobuf/port_def.inc b/third_party/protobuf/src/google/protobuf/port_def.inc +index f1bd85d..9c204a1 100644 +--- a/third_party/protobuf/src/google/protobuf/port_def.inc ++++ b/third_party/protobuf/src/google/protobuf/port_def.inc +@@ -528,6 +528,35 @@ PROTOBUF_EXPORT_TEMPLATE_TEST(DEFAULT, __declspec(dllimport)); + #undef IN + #endif // _MSC_VER + ++// Specify memory alignment for structs, classes, etc. ++// Use like: ++// class PROTOBUF_ALIGNAS(16) MyClass { ... } ++// PROTOBUF_ALIGNAS(16) int array[4]; ++// ++// In most places you can use the C++11 keyword "alignas", which is preferred. ++// ++// But compilers have trouble mixing __attribute__((...)) syntax with ++// alignas(...) syntax. ++// ++// Doesn't work in clang or gcc: ++// struct alignas(16) __attribute__((packed)) S { char c; }; ++// Works in clang but not gcc: ++// struct __attribute__((packed)) alignas(16) S2 { char c; }; ++// Works in clang and gcc: ++// struct alignas(16) S3 { char c; } __attribute__((packed)); ++// ++// There are also some attributes that must be specified *before* a class ++// definition: visibility (used for exporting functions/classes) is one of ++// these attributes. This means that it is not possible to use alignas() with a ++// class that is marked as exported. ++#if defined(_MSC_VER) ++#define PROTOBUF_ALIGNAS(byte_alignment) __declspec(align(byte_alignment)) ++#elif defined(__GNUC__) ++#define PROTOBUF_ALIGNAS(byte_alignment) __attribute__((aligned(byte_alignment))) ++#else ++#define PROTOBUF_ALIGNAS(byte_alignment) alignas(byte_alignment) ++#endif ++ + #if defined(__clang__) + #pragma clang diagnostic push + // TODO(gerbens) ideally we cleanup the code. But a cursory try shows many +diff --git a/third_party/protobuf/src/google/protobuf/arena.h b/third_party/protobuf/src/google/protobuf/arena.h +index dedc221..a8515ce 100644 +--- a/third_party/protobuf/src/google/protobuf/arena.h ++++ b/third_party/protobuf/src/google/protobuf/arena.h +@@ -245,7 +245,7 @@ struct ArenaOptions { + // well as protobuf container types like RepeatedPtrField and Map. The protocol + // is internal to protobuf and is not guaranteed to be stable. Non-proto types + // should not rely on this protocol. +-class PROTOBUF_EXPORT alignas(8) Arena final { ++class PROTOBUF_EXPORT PROTOBUF_ALIGNAS(8) Arena final { + public: + // Arena constructor taking custom options. See ArenaOptions below for + // descriptions of the options available. +diff --git a/third_party/protobuf/src/google/protobuf/port_def.inc b/third_party/protobuf/src/google/protobuf/port_def.inc +index f1bd85d..6d02b53 100644 +--- a/third_party/protobuf/src/google/protobuf/port_def.inc ++++ b/third_party/protobuf/src/google/protobuf/port_def.inc +@@ -528,6 +528,35 @@ PROTOBUF_EXPORT_TEMPLATE_TEST(DEFAULT, __declspec(dllimport)); + #undef IN + #endif // _MSC_VER + ++// Specify memory alignment for structs, classes, etc. ++// Use like: ++// class PROTOBUF_ALIGNAS(16) MyClass { ... } ++// PROTOBUF_ALIGNAS(16) int array[4]; ++// ++// In most places you can use the C++11 keyword "alignas", which is preferred. ++// ++// But compilers have trouble mixing __attribute__((...)) syntax with ++// alignas(...) syntax. ++// ++// Doesn't work in clang or gcc: ++// struct alignas(16) __attribute__((packed)) S { char c; }; ++// Works in clang but not gcc: ++// struct __attribute__((packed)) alignas(16) S2 { char c; }; ++// Works in clang and gcc: ++// struct alignas(16) S3 { char c; } __attribute__((packed)); ++// ++// There are also some attributes that must be specified *before* a class ++// definition: visibility (used for exporting functions/classes) is one of ++// these attributes. This means that it is not possible to use alignas() with a ++// class that is marked as exported. ++#if defined(_MSC_VER) ++#define PROTOBUF_ALIGNAS(byte_alignment) __declspec(align(byte_alignment)) ++#elif defined(__GNUC__) ++#define PROTOBUF_ALIGNAS(byte_alignment) __attribute__((aligned(byte_alignment))) ++#else ++#define PROTOBUF_ALIGNAS(byte_alignment) alignas(byte_alignment) ++#endif ++ + #if defined(__clang__) + #pragma clang diagnostic push + // TODO(gerbens) ideally we cleanup the code. But a cursory try shows many +diff --git a/third_party/protobuf/src/google/protobuf/port_undef.inc b/third_party/protobuf/src/google/protobuf/port_undef.inc +index b7e67fe..ba1fffc 100644 +--- a/third_party/protobuf/src/google/protobuf/port_undef.inc ++++ b/third_party/protobuf/src/google/protobuf/port_undef.inc +@@ -80,6 +80,7 @@ + #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_foj3FJo5StF0OvIzl7oMxA__declspec + #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_dllexport + #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_dllimport ++#undef PROTOBUF_ALIGNAS + + + diff --git a/www-client/chromium/files/chromium-78-gcc-enum-range.patch b/www-client/chromium/files/chromium-78-gcc-enum-range.patch new file mode 100644 index 000000000000..9c15e954b4ea --- /dev/null +++ b/www-client/chromium/files/chromium-78-gcc-enum-range.patch @@ -0,0 +1,46 @@ +From 9662ec844017690d5fd56bf0f05ef6a540dd29c1 Mon Sep 17 00:00:00 2001 +From: Tom Anderson <thomasanderson@chromium.org> +Date: Mon, 09 Sep 2019 19:06:01 +0000 +Subject: [PATCH] Fix GCC build error + +Fixes this error: +[ 375s] In file included from ../../base/task/common/intrusive_heap.h:8, +[ 375s] from ../../base/task/thread_pool/task_source.h:17, +[ 375s] from ../../base/task/thread_pool/task_tracker.h:27, +[ 375s] from ./../../base/task/thread_pool/service_thread.cc:14, +[ 375s] from gen/base/base_jumbo_28.cc:5: +[ 375s] ../../base/containers/intrusive_heap.h:152:36: error: enumerator value + '-1' is outside the range of underlying type 'size_t' {aka 'long unsigned int'} +[ 375s] 152 | enum : size_t { kInvalidIndex = -1 }; +[ 375s] | + +Change-Id: I6044fb704931b2f8416f6b19a247ae297cd7b0d6 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1792763 +Commit-Queue: Thomas Anderson <thomasanderson@chromium.org> +Commit-Queue: Lei Zhang <thestig@chromium.org> +Reviewed-by: Lei Zhang <thestig@chromium.org> +Auto-Submit: Thomas Anderson <thomasanderson@chromium.org> +Cr-Commit-Position: refs/heads/master@{#694853} +--- + +diff --git a/base/containers/intrusive_heap.h b/base/containers/intrusive_heap.h +index 53d3909..d7626bb 100644 +--- a/base/containers/intrusive_heap.h ++++ b/base/containers/intrusive_heap.h +@@ -131,6 +131,7 @@ + + #include <algorithm> + #include <functional> ++#include <limits> + #include <type_traits> + #include <utility> + #include <vector> +@@ -149,7 +150,7 @@ + // in place. + class BASE_EXPORT HeapHandle { + public: +- enum : size_t { kInvalidIndex = -1 }; ++ enum : size_t { kInvalidIndex = std::numeric_limits<size_t>::max() }; + + constexpr HeapHandle() = default; + constexpr HeapHandle(const HeapHandle& other) = default; diff --git a/www-client/chromium/files/chromium-78-gcc-noexcept.patch b/www-client/chromium/files/chromium-78-gcc-noexcept.patch new file mode 100644 index 000000000000..8ddb53fe82d2 --- /dev/null +++ b/www-client/chromium/files/chromium-78-gcc-noexcept.patch @@ -0,0 +1,32 @@ +From d16cda8fc3476cc534a756873cc8aa2692a57054 Mon Sep 17 00:00:00 2001 +From: Jose Dapena Paz <jose.dapena@lge.com> +Date: Thu, 22 Aug 2019 13:13:36 +0200 +Subject: [PATCH] GCC: declare noexcept move constructor/assign operators of V8StackTraceId + +blink::BlinkCloneableMessage declares default implementation of +move operator/assign operator that requires v8_inspector::V8StackTraceId +to declare its move constructor/assign operator too. + +Bug: chromium:819294 +Change-Id: Iaf626ee8245efcba372a17cdf2de448e691d41d6 +Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1796062 +Commit-Queue: José Dapena Paz <jose.dapena@lge.com> +Reviewed-by: Yang Guo <yangguo@chromium.org> +Cr-Commit-Position: refs/heads/master@{#63799} +--- + +diff --git a/v8/include/v8-inspector.h b/v8/include/v8-inspector.h +index ce5b777..ed4cdec 100644 +--- a/v8/include/v8-inspector.h ++++ b/v8/include/v8-inspector.h +@@ -231,7 +231,10 @@ struct V8_EXPORT V8StackTraceId { + std::pair<int64_t, int64_t> debugger_id; + + V8StackTraceId(); ++ V8StackTraceId(const V8StackTraceId&) = default; + V8StackTraceId(uintptr_t id, const std::pair<int64_t, int64_t> debugger_id); ++ V8StackTraceId& operator=(const V8StackTraceId&) = default; ++ V8StackTraceId& operator=(V8StackTraceId&&) noexcept = default; + ~V8StackTraceId() = default; + + bool IsInvalid() const; diff --git a/www-client/chromium/files/chromium-78-gcc-std-vector.patch b/www-client/chromium/files/chromium-78-gcc-std-vector.patch new file mode 100644 index 000000000000..cf1abf06b5a1 --- /dev/null +++ b/www-client/chromium/files/chromium-78-gcc-std-vector.patch @@ -0,0 +1,87 @@ +From f4c3c329588b78af63aad8b401da767242b86709 Mon Sep 17 00:00:00 2001 +From: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com> +Date: Mon, 16 Sep 2019 17:05:42 +0000 +Subject: [PATCH] dns_util: Make DohUpgradeEntry non-const when used with std::vector<> + +This fixes the build with libstdc++ (with most other standard libraries +other than libc++, in fact) after commit f93a48e3 ("Allow upgrade to DoH +during automatic mode"): + +../../../../../../usr/bin/../lib/gcc/x86_64-redhat-linux/8/../../../../include/c++/8/bits/stl_vector.h:351:7: error: static_assert failed due to requirement 'is_same<typename remove_cv<const DohUpgradeEntry>::type, const DohUpgradeEntry>::value' "std::vector must have a non-const, non-volatile value_type" + static_assert(is_same<typename remove_cv<_Tp>::type, _Tp>::value, + ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +../../base/no_destructor.h:77:28: note: in instantiation of template class 'std::vector<const net::(anonymous namespace)::DohUpgradeEntry, std::allocator<const net::(anonymous namespace)::DohUpgradeEntry> >' requested here + alignas(T) char storage_[sizeof(T)]; + ^ +../../net/dns/dns_util.cc:147:7: note: in instantiation of template class 'base::NoDestructor<std::vector<const net::(anonymous namespace)::DohUpgradeEntry, std::allocator<const net::(anonymous namespace)::DohUpgradeEntry> > >' requested here + upgradable_servers({ + ^ +../../net/dns/dns_util.cc:230:36: error: invalid range expression of type 'const std::vector<const net::(anonymous namespace)::DohUpgradeEntry, std::allocator<const net::(anonymous namespace)::DohUpgradeEntry> >'; no viable 'begin' function available + for (const auto& upgrade_entry : upgradable_servers) { + ^ ~~~~~~~~~~~~~~~~~~ + +The C++ standard forbids containers of const elements. Callers of +GetDohUpgradeList() use it in a safe way anyway, and most of +DohUpgradeEntry's members are const. + +(Added gcc specific workaround) + +Bug: 957519 +Change-Id: I826a51823edb1184c0fae27105101e2894efe568 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1805636 +Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com> +Commit-Queue: Eric Orth <ericorth@chromium.org> +Reviewed-by: Eric Orth <ericorth@chromium.org> +Cr-Commit-Position: refs/heads/master@{#696834} +--- + +diff --git a/net/dns/dns_util.cc b/net/dns/dns_util.cc +index d83ff7c..14997c4 100644 +--- a/net/dns/dns_util.cc ++++ b/net/dns/dns_util.cc +@@ -139,12 +139,12 @@ struct DohUpgradeEntry { + const DnsConfig::DnsOverHttpsServerConfig dns_over_https_config; + }; + +-const std::vector<const DohUpgradeEntry>& GetDohUpgradeList() { ++const std::vector<DohUpgradeEntry>& GetDohUpgradeList() { + // The provider names in these entries should be kept in sync with the + // DohProviderId histogram suffix list in + // tools/metrics/histograms/histograms.xml. +- static const base::NoDestructor<std::vector<const DohUpgradeEntry>> +- upgradable_servers({ ++ static const base::NoDestructor<std::vector<DohUpgradeEntry>> ++ upgradable_servers(std::initializer_list<DohUpgradeEntry>{ + DohUpgradeEntry( + "CleanBrowsingAdult", + {"185.228.168.10", "185.228.169.11", "2a0d:2a00:1::1", +@@ -222,8 +222,7 @@ const std::vector<const DohUpgradeEntry>& GetDohUpgradeList() { + std::vector<const DohUpgradeEntry*> GetDohUpgradeEntriesFromNameservers( + const std::vector<IPEndPoint>& dns_servers, + const std::vector<std::string>& excluded_providers) { +- const std::vector<const DohUpgradeEntry>& upgradable_servers = +- GetDohUpgradeList(); ++ const std::vector<DohUpgradeEntry>& upgradable_servers = GetDohUpgradeList(); + std::vector<const DohUpgradeEntry*> entries; + + for (const auto& server : dns_servers) { +@@ -417,8 +416,7 @@ std::vector<DnsConfig::DnsOverHttpsServerConfig> + GetDohUpgradeServersFromDotHostname( + const std::string& dot_server, + const std::vector<std::string>& excluded_providers) { +- const std::vector<const DohUpgradeEntry>& upgradable_servers = +- GetDohUpgradeList(); ++ const std::vector<DohUpgradeEntry>& upgradable_servers = GetDohUpgradeList(); + std::vector<DnsConfig::DnsOverHttpsServerConfig> doh_servers; + + if (dot_server.empty()) +@@ -451,8 +449,7 @@ GetDohUpgradeServersFromNameservers( + + std::string GetDohProviderIdForHistogramFromDohConfig( + const DnsConfig::DnsOverHttpsServerConfig& doh_server) { +- const std::vector<const DohUpgradeEntry>& upgradable_servers = +- GetDohUpgradeList(); ++ const std::vector<DohUpgradeEntry>& upgradable_servers = GetDohUpgradeList(); + for (const auto& upgrade_entry : upgradable_servers) { + if (doh_server.server_template == + upgrade_entry.dns_over_https_config.server_template) { diff --git a/www-client/chromium/files/chromium-78-include.patch b/www-client/chromium/files/chromium-78-include.patch index a0b77c4fb9d4..224aa3b35193 100644 --- a/www-client/chromium/files/chromium-78-include.patch +++ b/www-client/chromium/files/chromium-78-include.patch @@ -1,13 +1,25 @@ -diff --git a/components/password_manager/core/browser/leak_detection/encryption_utils.cc b/components/password_manager/core/browser/leak_detection/encryption_utils.cc -index 31a7116..53eb464 100644 ---- a/components/password_manager/core/browser/leak_detection/encryption_utils.cc -+++ b/components/password_manager/core/browser/leak_detection/encryption_utils.cc -@@ -13,6 +13,8 @@ - #include "crypto/sha2.h" - #include "third_party/boringssl/src/include/openssl/evp.h" +From bbfe2665923225b4a7c436ba2b6c7e5f695f2e52 Mon Sep 17 00:00:00 2001 +From: David Landell <landell@vewd.com> +Date: Fri, 13 Sep 2019 12:24:13 +0000 +Subject: [PATCH] Add missing include for unique_ptr + +Change-Id: I614d2f42868d563eb6a92dfb2aae08286e20d687 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1803137 +Reviewed-by: Henrik Boström <hbos@chromium.org> +Commit-Queue: Henrik Boström <hbos@chromium.org> +Cr-Commit-Position: refs/heads/master@{#696355} +--- + +diff --git a/third_party/blink/public/platform/web_rtc_rtp_source.h b/third_party/blink/public/platform/web_rtc_rtp_source.h +index 959440f..c3fd542 100644 +--- a/third_party/blink/public/platform/web_rtc_rtp_source.h ++++ b/third_party/blink/public/platform/web_rtc_rtp_source.h +@@ -5,6 +5,8 @@ + #ifndef THIRD_PARTY_BLINK_PUBLIC_PLATFORM_WEB_RTC_RTP_SOURCE_H_ + #define THIRD_PARTY_BLINK_PUBLIC_PLATFORM_WEB_RTC_RTP_SOURCE_H_ -+#include <climits> ++#include <memory> + - namespace password_manager { + #include "base/optional.h" + #include "third_party/blink/public/platform/web_common.h" - namespace { diff --git a/www-client/chromium/files/chromium-78-protobuf-export.patch b/www-client/chromium/files/chromium-78-protobuf-export.patch new file mode 100644 index 000000000000..ddb9e80eefe4 --- /dev/null +++ b/www-client/chromium/files/chromium-78-protobuf-export.patch @@ -0,0 +1,13 @@ +diff --git a/third_party/protobuf/src/google/protobuf/repeated_field.h b/third_party/protobuf/src/google/protobuf/repeated_field.h +index b5b193c..4434854 100644 +--- a/third_party/protobuf/src/google/protobuf/repeated_field.h ++++ b/third_party/protobuf/src/google/protobuf/repeated_field.h +@@ -804,7 +804,7 @@ class StringTypeHandler { + // RepeatedPtrField is like RepeatedField, but used for repeated strings or + // Messages. + template <typename Element> +-class RepeatedPtrField final : private internal::RepeatedPtrFieldBase { ++class PROTOBUF_EXPORT RepeatedPtrField final : private internal::RepeatedPtrFieldBase { + public: + RepeatedPtrField(); + explicit RepeatedPtrField(Arena* arena); diff --git a/www-client/chromium/files/chromium-unbundle-zlib-r1.patch b/www-client/chromium/files/chromium-unbundle-zlib-r1.patch new file mode 100644 index 000000000000..951a2adb196a --- /dev/null +++ b/www-client/chromium/files/chromium-unbundle-zlib-r1.patch @@ -0,0 +1,13 @@ +diff --git a/third_party/perfetto/gn/BUILD.gn b/third_party/perfetto/gn/BUILD.gn +index 3bc618a..e0ddf6d 100644 +--- a/third_party/perfetto/gn/BUILD.gn ++++ b/third_party/perfetto/gn/BUILD.gn +@@ -244,7 +244,7 @@ if (enable_perfetto_trace_processor || perfetto_build_standalone || + "//buildtools:zlib", + ] + } else { +- public_configs = [ "//third_party/zlib:zlib_config" ] ++ public_configs = [ "//third_party/zlib:system_zlib" ] + public_deps = [ + "//third_party/zlib", + ] |