aboutsummaryrefslogtreecommitdiffstats
path: root/chromium
diff options
context:
space:
mode:
authorTing-Wei Lan <lantw44@gmail.com>2019-09-11 22:14:35 +0800
committerTing-Wei Lan <lantw44@gmail.com>2019-09-12 11:29:05 +0800
commit34d68138c7d454ce622b9f11e765e52d9d2ae677 (patch)
treeae2c780e13629564fe8cb41978e16bf394c0a103 /chromium
parentf4dbed5260dbe6644f9c6e4cf89bc4702c2f0eeb (diff)
downloadcopr-rpm-spec-34d68138c7d454ce622b9f11e765e52d9d2ae677.tar
copr-rpm-spec-34d68138c7d454ce622b9f11e765e52d9d2ae677.tar.gz
copr-rpm-spec-34d68138c7d454ce622b9f11e765e52d9d2ae677.tar.bz2
copr-rpm-spec-34d68138c7d454ce622b9f11e765e52d9d2ae677.tar.lz
copr-rpm-spec-34d68138c7d454ce622b9f11e765e52d9d2ae677.tar.xz
copr-rpm-spec-34d68138c7d454ce622b9f11e765e52d9d2ae677.tar.zst
copr-rpm-spec-34d68138c7d454ce622b9f11e765e52d9d2ae677.zip
chromium: Chromium 76.0.3809.132 -> 77.0.3865.75
Diffstat (limited to 'chromium')
-rw-r--r--chromium/chromium/chromium-base-location.patch13
-rwxr-xr-xchromium/chromium/chromium-ffmpeg-clean.sh1
-rw-r--r--chromium/chromium/chromium-gcc9-r666279.patch59
-rw-r--r--chromium/chromium/chromium-gcc9-r666336.patch40
-rw-r--r--chromium/chromium/chromium-gcc9-r666401.patch48
-rw-r--r--chromium/chromium/chromium-gcc9-r666436.patch42
-rw-r--r--chromium/chromium/chromium-gcc9-r666619.patch38
-rw-r--r--chromium/chromium/chromium-gcc9-r666714.patch111
-rw-r--r--chromium/chromium/chromium-gcc9-r667064.patch114
-rw-r--r--chromium/chromium/chromium-gcc9-r667228.patch102
-rw-r--r--chromium/chromium/chromium-gcc9-r667260.patch46
-rw-r--r--chromium/chromium/chromium-gcc9-r667484.patch68
-rw-r--r--chromium/chromium/chromium-gcc9-r667901.patch105
-rw-r--r--chromium/chromium/chromium-gcc9-r668015.patch72
-rw-r--r--chromium/chromium/chromium-gcc9-r668033.patch124
-rw-r--r--chromium/chromium/chromium-gcc9-r670973.patch55
-rw-r--r--chromium/chromium/chromium-gcc9-r670980.patch61
-rw-r--r--chromium/chromium/chromium-gcc9-r681321.patch35
-rw-r--r--chromium/chromium/chromium-gcc9-r681333.patch71
-rw-r--r--chromium/chromium/chromium-gcc9-r684731.patch138
-rw-r--r--chromium/chromium/chromium-quiche-gcc9.patch245
-rw-r--r--chromium/chromium/chromium-unbundle-zlib.patch25
-rw-r--r--chromium/chromium/chromium.spec46
23 files changed, 306 insertions, 1353 deletions
diff --git a/chromium/chromium/chromium-base-location.patch b/chromium/chromium/chromium-base-location.patch
new file mode 100644
index 0000000..a57b5a4
--- /dev/null
+++ b/chromium/chromium/chromium-base-location.patch
@@ -0,0 +1,13 @@
+diff --git a/base/location.h b/base/location.h
+index c07e747..924db1c 100644
+--- a/base/location.h
++++ b/base/location.h
+@@ -18,7 +18,7 @@
+
+ namespace base {
+
+-#if defined(__has_builtin)
++#if defined(__clang__)
+ // Clang allows detection of these builtins.
+ #define SUPPORTS_LOCATION_BUILTINS \
+ (__has_builtin(__builtin_FUNCTION) && __has_builtin(__builtin_FILE) && \
diff --git a/chromium/chromium/chromium-ffmpeg-clean.sh b/chromium/chromium/chromium-ffmpeg-clean.sh
index 851cb90..5712719 100755
--- a/chromium/chromium/chromium-ffmpeg-clean.sh
+++ b/chromium/chromium/chromium-ffmpeg-clean.sh
@@ -150,6 +150,7 @@ header_files=" libavcodec/x86/inline_asm.h \
libavcodec/vorbisdsp.h \
libavcodec/vp3data.h \
libavcodec/vp3dsp.h \
+ libavcodec/vp4data.h \
libavcodec/vp56.h \
libavcodec/vp56dsp.h \
libavcodec/vp8data.h \
diff --git a/chromium/chromium/chromium-gcc9-r666279.patch b/chromium/chromium/chromium-gcc9-r666279.patch
deleted file mode 100644
index 0e8b680..0000000
--- a/chromium/chromium/chromium-gcc9-r666279.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From cdf306db81efaaaa954487585d5a5a16205a5ebd Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Wed, 5 Jun 2019 14:45:06 +0000
-Subject: [PATCH] Avoid pure virtual crash destroying RenderProcessUserData
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-When RenderProcessUserData is destroyed from the destructor of
-RenderProcessHostImpl, it is done in the destructor of RenderProcessHost.
-At this point RemoveObserver override is already freed, so RenderProcessHost
-is pure virtual. This crash happens at least building with GCC:
-
- at /usr/include/c++/8/ext/new_allocator.h:140
- (this=0x7fffffffcb50, __in_chrg=<optimized out>) at /usr/include/c++/8/bits/stl_tree.h:964
-
-We need to destroy RenderProcessUserData before that happens. To do that
-we can just override RenderProcessHostDestroyed.
-
-Bug: 910288
-Change-Id: I38107b178829b0cb7494f5333b765e5b087d82cd
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645366
-Commit-Queue: Sigurður Ásgeirsson <siggi@chromium.org>
-Reviewed-by: Sigurður Ásgeirsson <siggi@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#666279}
----
- .../browser/performance_manager/render_process_user_data.cc | 5 +++++
- .../browser/performance_manager/render_process_user_data.h | 1 +
- 2 files changed, 6 insertions(+)
-
-diff --git a/chrome/browser/performance_manager/render_process_user_data.cc b/chrome/browser/performance_manager/render_process_user_data.cc
-index 2e2c199d4fff..ef6e1fbfb986 100644
---- a/chrome/browser/performance_manager/render_process_user_data.cc
-+++ b/chrome/browser/performance_manager/render_process_user_data.cc
-@@ -116,4 +116,9 @@ void RenderProcessUserData::RenderProcessExited(
- base::Unretained(process_node_.get()), info.exit_code));
- }
-
-+void RenderProcessUserData::RenderProcessHostDestroyed(
-+ content::RenderProcessHost* host) {
-+ host->RemoveUserData(kRenderProcessUserDataKey);
-+}
-+
- } // namespace performance_manager
-diff --git a/chrome/browser/performance_manager/render_process_user_data.h b/chrome/browser/performance_manager/render_process_user_data.h
-index ac74b1df2040..f3b4d162e6d3 100644
---- a/chrome/browser/performance_manager/render_process_user_data.h
-+++ b/chrome/browser/performance_manager/render_process_user_data.h
-@@ -47,6 +47,7 @@ class RenderProcessUserData : public base::SupportsUserData::Data,
- void RenderProcessExited(
- content::RenderProcessHost* host,
- const content::ChildProcessTerminationInfo& info) override;
-+ void RenderProcessHostDestroyed(content::RenderProcessHost* host) override;
-
- // All instances are linked together in a doubly linked list to allow orderly
- // destruction at browser shutdown time.
---
-2.21.0
-
diff --git a/chromium/chromium/chromium-gcc9-r666336.patch b/chromium/chromium/chromium-gcc9-r666336.patch
deleted file mode 100644
index baa4fe8..0000000
--- a/chromium/chromium/chromium-gcc9-r666336.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From cf6d6b40d711fce93a24a2cf517fa3becdbae8bb Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Wed, 5 Jun 2019 17:18:40 +0000
-Subject: [PATCH] Make blink::LayoutUnit::HasFraction constexpr
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Other HasFraction methods as in PhysicalUnit are declared already
-constexpr and using it. It breaks GCC build.
-
-Bug: 819294.
-Change-Id: I0c4bd9bd206d45cf31f7fa815ce8533718a425cb
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645222
-Reviewed-by: vmpstr <vmpstr@chromium.org>
-Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#666336}
----
- third_party/blink/renderer/platform/geometry/layout_unit.h | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/third_party/blink/renderer/platform/geometry/layout_unit.h b/third_party/blink/renderer/platform/geometry/layout_unit.h
-index f073986fbe17..b6dbc761c967 100644
---- a/third_party/blink/renderer/platform/geometry/layout_unit.h
-+++ b/third_party/blink/renderer/platform/geometry/layout_unit.h
-@@ -202,7 +202,9 @@ class LayoutUnit {
- return value_ > 0 ? LayoutUnit() : *this;
- }
-
-- bool HasFraction() const { return RawValue() % kFixedPointDenominator; }
-+ constexpr bool HasFraction() const {
-+ return RawValue() % kFixedPointDenominator;
-+ }
-
- LayoutUnit Fraction() const {
- // Compute fraction using the mod operator to preserve the sign of the value
---
-2.21.0
-
diff --git a/chromium/chromium/chromium-gcc9-r666401.patch b/chromium/chromium/chromium-gcc9-r666401.patch
deleted file mode 100644
index 9b884a0..0000000
--- a/chromium/chromium/chromium-gcc9-r666401.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From 52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Wed, 5 Jun 2019 19:46:55 +0000
-Subject: [PATCH] GCC: avoid ambiguous NoDestructor creation in
- GetNeverSniffedMimeTypes.
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Use brace-list notation to wrap the already existing brace-list for
-initializing the flat-set. This resolves an ambiguous instantiation
-in GCC.
-
-Bug: 819294
-Change-Id: I89ddf12522d62a5140a8c2c41dc98e30ec7a0e78
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645774
-Reviewed-by: Matt Menke <mmenke@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#666401}
----
- services/network/cross_origin_read_blocking.cc | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/services/network/cross_origin_read_blocking.cc b/services/network/cross_origin_read_blocking.cc
-index 30999c075d99..60a03f67ac9f 100644
---- a/services/network/cross_origin_read_blocking.cc
-+++ b/services/network/cross_origin_read_blocking.cc
-@@ -207,7 +207,7 @@ std::set<int>& GetPluginProxyingProcesses() {
- // confirmation sniffing because images, scripts, etc. are frequently
- // mislabelled by http servers as HTML/JSON/XML).
- base::flat_set<std::string>& GetNeverSniffedMimeTypes() {
-- static base::NoDestructor<base::flat_set<std::string>> s_types({
-+ static base::NoDestructor<base::flat_set<std::string>> s_types{{
- // The list below has been populated based on most commonly used content
- // types according to HTTP Archive - see:
- // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454
-@@ -219,7 +219,7 @@ base::flat_set<std::string>& GetNeverSniffedMimeTypes() {
- "application/x-protobuf",
- "application/zip",
- "text/event-stream",
-- });
-+ }};
-
- // All items need to be lower-case, to support case-insensitive comparisons
- // later.
---
-2.21.0
-
diff --git a/chromium/chromium/chromium-gcc9-r666436.patch b/chromium/chromium/chromium-gcc9-r666436.patch
deleted file mode 100644
index acf5725..0000000
--- a/chromium/chromium/chromium-gcc9-r666436.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 7dc76c8d9f4cfbce7cf11424120aa6f6094916dc Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Wed, 5 Jun 2019 21:09:01 +0000
-Subject: [PATCH] GCC: XSetWindowAttributes struct initialization should keep
- order of declaration
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-XSetWindowAttributes initialization of attributes in GLSurfaceGLX is not in the
-same order of the declaration. GCC fails because of that.
-
-Bug: 819294
-Change-Id: I8a97da980d5961a35a47ae4d0d8d558b85291f1f
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1646253
-Reviewed-by: Zhenyao Mo <zmo@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#666436}
----
- ui/gl/gl_surface_glx.cc | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/ui/gl/gl_surface_glx.cc b/ui/gl/gl_surface_glx.cc
-index f649dd469bac..0aa6892014f2 100644
---- a/ui/gl/gl_surface_glx.cc
-+++ b/ui/gl/gl_surface_glx.cc
-@@ -583,10 +583,10 @@ bool NativeViewGLSurfaceGLX::Initialize(GLSurfaceFormat format) {
-
- XSetWindowAttributes swa = {
- .background_pixmap = 0,
-- .bit_gravity = NorthWestGravity,
-- .colormap = g_colormap,
- .background_pixel = 0, // ARGB(0,0,0,0) for compositing WM
- .border_pixel = 0,
-+ .bit_gravity = NorthWestGravity,
-+ .colormap = g_colormap,
- };
- auto value_mask = CWBackPixmap | CWBitGravity | CWColormap | CWBorderPixel;
- if (ui::IsCompositingManagerPresent() &&
---
-2.21.0
-
diff --git a/chromium/chromium/chromium-gcc9-r666619.patch b/chromium/chromium/chromium-gcc9-r666619.patch
deleted file mode 100644
index 2fce67c..0000000
--- a/chromium/chromium/chromium-gcc9-r666619.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 53bb5a463ee956c70230eaa5450022185d0ddc3c Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Thu, 6 Jun 2019 07:54:05 +0000
-Subject: [PATCH] ThrottlingController::Liveness needs to be uint32_t
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-We are setting kAlive and kDead values assigning values that
-are bigger than the maximum signed int32. It is better to use
-uint32_t in this case.
-
-Bug: 819294
-Change-Id: If72b48291a66a3a9db24b4c8e2d11d31936a66ee
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645772
-Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#666619}
----
- services/network/throttling/throttling_controller.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/services/network/throttling/throttling_controller.h b/services/network/throttling/throttling_controller.h
-index 43751c4976a4..3c6f87be850c 100644
---- a/services/network/throttling/throttling_controller.h
-+++ b/services/network/throttling/throttling_controller.h
-@@ -38,7 +38,7 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) ThrottlingController {
-
- // TODO(https://crbug.com/960874): Debugging code to try and shed some light
- // on why the owned maps are invalid.
-- enum class Liveness : int32_t {
-+ enum class Liveness : uint32_t {
- kAlive = 0xCA11AB13,
- kDead = 0xDEADBEEF,
- };
---
-2.21.0
-
diff --git a/chromium/chromium/chromium-gcc9-r666714.patch b/chromium/chromium/chromium-gcc9-r666714.patch
deleted file mode 100644
index 77f71dd..0000000
--- a/chromium/chromium/chromium-gcc9-r666714.patch
+++ /dev/null
@@ -1,111 +0,0 @@
-From 41d954dec0669c9a85730c0bde7df7ba7a0ff43e Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Thu, 6 Jun 2019 15:30:49 +0000
-Subject: [PATCH] Fix AutocompleteMatch move constructor/assign operator
- noexcept
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-For AutocompleteMatch to declare noexcept them, all the contained
-properties need to be noexcept too. This is required at least
-for SuggestionAnswer, because base::string16 will make default
-calculated signature of the move operator noexcept(false).
-
-To avoid this issue we explicitely declare them on SuggestionAnswer,
-and its member classes TextField and ImageLine.
-
-Bug: 819294
-Change-Id: I8714f2c6352a3292bdebdc3aed9790270e49c580
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1554669
-Reviewed-by: Kevin Bailey <krb@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#666714}
----
- components/omnibox/browser/suggestion_answer.cc | 14 ++++++++++++++
- components/omnibox/browser/suggestion_answer.h | 8 ++++++++
- 2 files changed, 22 insertions(+)
-
-diff --git a/components/omnibox/browser/suggestion_answer.cc b/components/omnibox/browser/suggestion_answer.cc
-index 151e55f7dd58..a0c9049afedb 100644
---- a/components/omnibox/browser/suggestion_answer.cc
-+++ b/components/omnibox/browser/suggestion_answer.cc
-@@ -55,6 +55,12 @@ void AppendWithSpace(const SuggestionAnswer::TextField* text,
-
- SuggestionAnswer::TextField::TextField() = default;
- SuggestionAnswer::TextField::~TextField() = default;
-+SuggestionAnswer::TextField::TextField(const TextField&) = default;
-+SuggestionAnswer::TextField::TextField(TextField&&) noexcept = default;
-+SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=(
-+ const TextField&) = default;
-+SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=(
-+ TextField&&) noexcept = default;
-
- // static
- bool SuggestionAnswer::TextField::ParseTextField(const base::Value& field_json,
-@@ -93,9 +99,12 @@ size_t SuggestionAnswer::TextField::EstimateMemoryUsage() const {
- SuggestionAnswer::ImageLine::ImageLine()
- : num_text_lines_(1) {}
- SuggestionAnswer::ImageLine::ImageLine(const ImageLine& line) = default;
-+SuggestionAnswer::ImageLine::ImageLine(ImageLine&&) noexcept = default;
-
- SuggestionAnswer::ImageLine& SuggestionAnswer::ImageLine::operator=(
- const ImageLine& line) = default;
-+SuggestionAnswer::ImageLine& SuggestionAnswer::ImageLine::operator=(
-+ ImageLine&&) noexcept = default;
-
- SuggestionAnswer::ImageLine::~ImageLine() {}
-
-@@ -251,9 +260,14 @@ SuggestionAnswer::SuggestionAnswer() = default;
-
- SuggestionAnswer::SuggestionAnswer(const SuggestionAnswer& answer) = default;
-
-+SuggestionAnswer::SuggestionAnswer(SuggestionAnswer&&) noexcept = default;
-+
- SuggestionAnswer& SuggestionAnswer::operator=(const SuggestionAnswer& answer) =
- default;
-
-+SuggestionAnswer& SuggestionAnswer::operator=(SuggestionAnswer&&) noexcept =
-+ default;
-+
- SuggestionAnswer::~SuggestionAnswer() = default;
-
- // static
-diff --git a/components/omnibox/browser/suggestion_answer.h b/components/omnibox/browser/suggestion_answer.h
-index 31be937ccbed..2840ace1c117 100644
---- a/components/omnibox/browser/suggestion_answer.h
-+++ b/components/omnibox/browser/suggestion_answer.h
-@@ -125,6 +125,10 @@ class SuggestionAnswer {
- public:
- TextField();
- ~TextField();
-+ TextField(const TextField&);
-+ TextField(TextField&&) noexcept;
-+ TextField& operator=(const TextField&);
-+ TextField& operator=(TextField&&) noexcept;
-
- // Parses |field_json| dictionary and populates |text_field| with the
- // contents. If any of the required elements is missing, returns false and
-@@ -162,7 +166,9 @@ class SuggestionAnswer {
- public:
- ImageLine();
- explicit ImageLine(const ImageLine& line);
-+ ImageLine(ImageLine&&) noexcept;
- ImageLine& operator=(const ImageLine& line);
-+ ImageLine& operator=(ImageLine&&) noexcept;
- ~ImageLine();
-
- // Parses dictionary |line_json| and populates |image_line| with the
-@@ -213,7 +219,9 @@ class SuggestionAnswer {
-
- SuggestionAnswer();
- SuggestionAnswer(const SuggestionAnswer& answer);
-+ SuggestionAnswer(SuggestionAnswer&&) noexcept;
- SuggestionAnswer& operator=(const SuggestionAnswer& answer);
-+ SuggestionAnswer& operator=(SuggestionAnswer&&) noexcept;
- ~SuggestionAnswer();
-
- // Parses dictionary |answer_json| and fills a SuggestionAnswer containing the
---
-2.21.0
-
diff --git a/chromium/chromium/chromium-gcc9-r667064.patch b/chromium/chromium/chromium-gcc9-r667064.patch
deleted file mode 100644
index 4d5275a..0000000
--- a/chromium/chromium/chromium-gcc9-r667064.patch
+++ /dev/null
@@ -1,114 +0,0 @@
-From 84c91abab33966f928497c24db4a39f436d2dca8 Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Fri, 7 Jun 2019 09:50:11 +0000
-Subject: [PATCH] Make SharedMemoryMapping move constructor noexcept
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-As LayerTreeHostImpl::UIResourceData move constructor is declared
-noexcept with default implementation, the move constructor of its
-members should also be noexcept. GCC will fail to build otherwise
-for mismatching noexcept declaration.
-
-We also set the move assignment operator.
-
-Bug: 819294
-Change-Id: Icd663da83b882e15f7d16780c9241972e09bc492
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645297
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Reviewed-by: Daniel Cheng <dcheng@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#667064}
----
- base/memory/shared_memory_mapping.cc | 12 ++++++------
- base/memory/shared_memory_mapping.h | 14 ++++++++------
- 2 files changed, 14 insertions(+), 12 deletions(-)
-
-diff --git a/base/memory/shared_memory_mapping.cc b/base/memory/shared_memory_mapping.cc
-index 2be2570004bb..8426fa8c214b 100644
---- a/base/memory/shared_memory_mapping.cc
-+++ b/base/memory/shared_memory_mapping.cc
-@@ -33,7 +33,7 @@ namespace base {
-
- SharedMemoryMapping::SharedMemoryMapping() = default;
-
--SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping)
-+SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept
- : memory_(mapping.memory_),
- size_(mapping.size_),
- mapped_size_(mapping.mapped_size_),
-@@ -42,7 +42,7 @@ SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping)
- }
-
- SharedMemoryMapping& SharedMemoryMapping::operator=(
-- SharedMemoryMapping&& mapping) {
-+ SharedMemoryMapping&& mapping) noexcept {
- Unmap();
- memory_ = mapping.memory_;
- size_ = mapping.size_;
-@@ -90,9 +90,9 @@ void SharedMemoryMapping::Unmap() {
-
- ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping() = default;
- ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping(
-- ReadOnlySharedMemoryMapping&&) = default;
-+ ReadOnlySharedMemoryMapping&&) noexcept = default;
- ReadOnlySharedMemoryMapping& ReadOnlySharedMemoryMapping::operator=(
-- ReadOnlySharedMemoryMapping&&) = default;
-+ ReadOnlySharedMemoryMapping&&) noexcept = default;
- ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping(
- void* address,
- size_t size,
-@@ -102,9 +102,9 @@ ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping(
-
- WritableSharedMemoryMapping::WritableSharedMemoryMapping() = default;
- WritableSharedMemoryMapping::WritableSharedMemoryMapping(
-- WritableSharedMemoryMapping&&) = default;
-+ WritableSharedMemoryMapping&&) noexcept = default;
- WritableSharedMemoryMapping& WritableSharedMemoryMapping::operator=(
-- WritableSharedMemoryMapping&&) = default;
-+ WritableSharedMemoryMapping&&) noexcept = default;
- WritableSharedMemoryMapping::WritableSharedMemoryMapping(
- void* address,
- size_t size,
-diff --git a/base/memory/shared_memory_mapping.h b/base/memory/shared_memory_mapping.h
-index d9569af8ee3a..2b8858e16624 100644
---- a/base/memory/shared_memory_mapping.h
-+++ b/base/memory/shared_memory_mapping.h
-@@ -32,8 +32,8 @@ class BASE_EXPORT SharedMemoryMapping {
- SharedMemoryMapping();
-
- // Move operations are allowed.
-- SharedMemoryMapping(SharedMemoryMapping&& mapping);
-- SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping);
-+ SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept;
-+ SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping) noexcept;
-
- // Unmaps the region if the mapping is valid.
- virtual ~SharedMemoryMapping();
-@@ -93,8 +93,9 @@ class BASE_EXPORT ReadOnlySharedMemoryMapping : public SharedMemoryMapping {
- ReadOnlySharedMemoryMapping();
-
- // Move operations are allowed.
-- ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&);
-- ReadOnlySharedMemoryMapping& operator=(ReadOnlySharedMemoryMapping&&);
-+ ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&) noexcept;
-+ ReadOnlySharedMemoryMapping& operator=(
-+ ReadOnlySharedMemoryMapping&&) noexcept;
-
- // Returns the base address of the mapping. This is read-only memory. This is
- // page-aligned. This is nullptr for invalid instances.
-@@ -171,8 +172,9 @@ class BASE_EXPORT WritableSharedMemoryMapping : public SharedMemoryMapping {
- WritableSharedMemoryMapping();
-
- // Move operations are allowed.
-- WritableSharedMemoryMapping(WritableSharedMemoryMapping&&);
-- WritableSharedMemoryMapping& operator=(WritableSharedMemoryMapping&&);
-+ WritableSharedMemoryMapping(WritableSharedMemoryMapping&&) noexcept;
-+ WritableSharedMemoryMapping& operator=(
-+ WritableSharedMemoryMapping&&) noexcept;
-
- // Returns the base address of the mapping. This is writable memory. This is
- // page-aligned. This is nullptr for invalid instances.
---
-2.21.0
-
diff --git a/chromium/chromium/chromium-gcc9-r667228.patch b/chromium/chromium/chromium-gcc9-r667228.patch
deleted file mode 100644
index c9b194b..0000000
--- a/chromium/chromium/chromium-gcc9-r667228.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-From c6afbd59c997c2b64f11abdd1eaef71ae8ea2ddc Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Fri, 7 Jun 2019 18:11:15 +0000
-Subject: [PATCH] GCC: FeaturePolicyParser ParseValueForFuzzer is not in
- anonymous namespace
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Compilation fails because we are declaring ParseValueForFuzzer as friend method,
-but we are declaring it is in anonymous namespace. Moving to global namespace
-still fails (in this case in Clang).
-
-So final solution is making it a public static method of FeaturePolicyParser.
-
-Bug: 819294
-Change-Id: Iea307cb6faef675b748d6eb5da2175dcbb17fdc7
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645223
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Reviewed-by: Luna Lu <loonybear@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#667228}
----
- .../core/feature_policy/feature_policy_parser.cc | 7 +++++++
- .../core/feature_policy/feature_policy_parser.h | 7 +++----
- .../feature_policy/feature_policy_value_fuzzer.cc | 15 ++++-----------
- 3 files changed, 14 insertions(+), 15 deletions(-)
-
-diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc
-index f1c9594cc4c9..bae91a1741aa 100644
---- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc
-+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc
-@@ -323,6 +323,13 @@ PolicyValue FeaturePolicyParser::ParseValueForType(
- return value;
- }
-
-+void FeaturePolicyParser::ParseValueForFuzzer(
-+ blink::mojom::PolicyValueType feature_type,
-+ const WTF::String& value_string) {
-+ bool ok;
-+ ParseValueForType(feature_type, value_string, &ok);
-+}
-+
- bool IsFeatureDeclared(mojom::FeaturePolicyFeature feature,
- const ParsedFeaturePolicy& policy) {
- return std::any_of(policy.begin(), policy.end(),
-diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h
-index fd25d90b56cf..8aa73231d45f 100644
---- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h
-+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h
-@@ -16,9 +16,6 @@
- #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
- #include "third_party/blink/renderer/platform/wtf/vector.h"
-
--// Forward declare for friendship.
--void ParseValueForFuzzer(blink::mojom::PolicyValueType, const WTF::String&);
--
- namespace blink {
-
- class Document;
-@@ -79,8 +76,10 @@ class CORE_EXPORT FeaturePolicyParser {
- const FeatureNameMap& feature_names,
- ExecutionContext* execution_context = nullptr);
-
-+ // Used for LLVM fuzzer test
-+ static void ParseValueForFuzzer(mojom::PolicyValueType, const String&);
-+
- private:
-- friend void ::ParseValueForFuzzer(mojom::PolicyValueType, const String&);
- static PolicyValue GetFallbackValueForFeature(
- mojom::FeaturePolicyFeature feature);
- static PolicyValue ParseValueForType(mojom::PolicyValueType feature_type,
-diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc
-index 7f8e6aa984b2..1455636e4953 100644
---- a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc
-+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc
-@@ -13,19 +13,12 @@
- #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
- #include "third_party/blink/renderer/platform/wtf/vector.h"
-
--void ParseValueForFuzzer(blink::mojom::PolicyValueType feature_type,
-- const WTF::String& value_string) {
-- bool ok;
-- blink::FeaturePolicyParser::ParseValueForType(feature_type, value_string,
-- &ok);
--}
--
- extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
- static blink::BlinkFuzzerTestSupport test_support =
- blink::BlinkFuzzerTestSupport();
-- ParseValueForFuzzer(blink::mojom::PolicyValueType::kBool,
-- WTF::String(data, size));
-- ParseValueForFuzzer(blink::mojom::PolicyValueType::kDecDouble,
-- WTF::String(data, size));
-+ blink::FeaturePolicyParser::ParseValueForFuzzer(
-+ blink::mojom::PolicyValueType::kBool, WTF::String(data, size));
-+ blink::FeaturePolicyParser::ParseValueForFuzzer(
-+ blink::mojom::PolicyValueType::kDecDouble, WTF::String(data, size));
- return 0;
- }
---
-2.21.0
-
diff --git a/chromium/chromium/chromium-gcc9-r667260.patch b/chromium/chromium/chromium-gcc9-r667260.patch
deleted file mode 100644
index 4c930c3..0000000
--- a/chromium/chromium/chromium-gcc9-r667260.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 9f99af41cae3cfff3bcdcc856c1539801c9b745b Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Fri, 7 Jun 2019 18:59:59 +0000
-Subject: [PATCH] DisjoingRangeLockManager::Lock move constructor/assign
- operator cannot be noexcept
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-They depend on LockRequest, that depends on WeakPtr, none of them noexcept.
-
-Bug: 819294
-Change-Id: I04ec15901ca627358df727540597f21f135c129b
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1646252
-Reviewed-by: Joshua Bell <jsbell@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#667260}
----
- .../indexed_db/scopes/disjoint_range_lock_manager.cc | 7 +++----
- 1 file changed, 3 insertions(+), 4 deletions(-)
-
-diff --git a/content/browser/indexed_db/scopes/disjoint_range_lock_manager.cc b/content/browser/indexed_db/scopes/disjoint_range_lock_manager.cc
-index 478a5c920521..a18c6cd74545 100644
---- a/content/browser/indexed_db/scopes/disjoint_range_lock_manager.cc
-+++ b/content/browser/indexed_db/scopes/disjoint_range_lock_manager.cc
-@@ -19,14 +19,13 @@ DisjointRangeLockManager::LockRequest::LockRequest(
- : requested_type(type),
- locks_holder(std::move(locks_holder)),
- acquired_callback(std::move(acquired_callback)) {}
--DisjointRangeLockManager::LockRequest::LockRequest(LockRequest&&) noexcept =
-- default;
-+DisjointRangeLockManager::LockRequest::LockRequest(LockRequest&&) = default;
- DisjointRangeLockManager::LockRequest::~LockRequest() = default;
- DisjointRangeLockManager::Lock::Lock() = default;
--DisjointRangeLockManager::Lock::Lock(Lock&&) noexcept = default;
-+DisjointRangeLockManager::Lock::Lock(Lock&&) = default;
- DisjointRangeLockManager::Lock::~Lock() = default;
- DisjointRangeLockManager::Lock& DisjointRangeLockManager::Lock::operator=(
-- DisjointRangeLockManager::Lock&&) noexcept = default;
-+ DisjointRangeLockManager::Lock&&) = default;
-
- DisjointRangeLockManager::DisjointRangeLockManager(int level_count)
- : task_runner_(base::SequencedTaskRunnerHandle::Get()),
---
-2.21.0
-
diff --git a/chromium/chromium/chromium-gcc9-r667484.patch b/chromium/chromium/chromium-gcc9-r667484.patch
deleted file mode 100644
index 9b9431c..0000000
--- a/chromium/chromium/chromium-gcc9-r667484.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-From bdc24128b75008743d819e298557a53205706e7c Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Sun, 9 Jun 2019 11:22:25 +0000
-Subject: [PATCH] GCC: fix noexcept from move constructor and assign operators
- of AccountInfo
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-AccountInfo declares them as noexcept and uses default implementation,
-so all its members (including AccountId) should be noexcept. But AccountId
-is not noexcept. To fix it we just need to make CoreAccountId move
-operator/assign operator noexcept.
-
-Bug: 819294
-Change-Id: Ice38654ab7cf3b9eaa6f54aa36e1fec329264f98
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645296
-Reviewed-by: Roger Tawa <rogerta@chromium.org>
-Reviewed-by: Sylvain Defresne <sdefresne@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#667484}
----
- google_apis/gaia/core_account_id.cc | 8 ++++++++
- google_apis/gaia/core_account_id.h | 5 +++++
- 2 files changed, 13 insertions(+)
-
-diff --git a/google_apis/gaia/core_account_id.cc b/google_apis/gaia/core_account_id.cc
-index d8080824d5db..12eefe325c14 100644
---- a/google_apis/gaia/core_account_id.cc
-+++ b/google_apis/gaia/core_account_id.cc
-@@ -6,8 +6,16 @@
-
- CoreAccountId::CoreAccountId() = default;
-
-+CoreAccountId::CoreAccountId(const CoreAccountId&) = default;
-+
-+CoreAccountId::CoreAccountId(CoreAccountId&&) noexcept = default;
-+
- CoreAccountId::~CoreAccountId() = default;
-
-+CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default;
-+
-+CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default;
-+
- CoreAccountId::CoreAccountId(const char* id) : id(id) {}
-
- CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {}
-diff --git a/google_apis/gaia/core_account_id.h b/google_apis/gaia/core_account_id.h
-index 5ea602aba2cf..c2d1911201a6 100644
---- a/google_apis/gaia/core_account_id.h
-+++ b/google_apis/gaia/core_account_id.h
-@@ -14,8 +14,13 @@
- // for design and tracking).
- struct CoreAccountId {
- CoreAccountId();
-+ CoreAccountId(const CoreAccountId&);
-+ CoreAccountId(CoreAccountId&&) noexcept;
- ~CoreAccountId();
-
-+ CoreAccountId& operator=(const CoreAccountId&);
-+ CoreAccountId& operator=(CoreAccountId&&) noexcept;
-+
- // Those implicit constructor and conversion operator allow to
- // progressively migrate the code to use this struct. Removing
- // them is tracked by https://crbug.com/959161
---
-2.21.0
-
diff --git a/chromium/chromium/chromium-gcc9-r667901.patch b/chromium/chromium/chromium-gcc9-r667901.patch
deleted file mode 100644
index b44a9f0..0000000
--- a/chromium/chromium/chromium-gcc9-r667901.patch
+++ /dev/null
@@ -1,105 +0,0 @@
-From dcb55fb8f18abe5f43d260aa67b14b2dc996f992 Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Tue, 11 Jun 2019 08:00:13 +0000
-Subject: [PATCH] GCC: move explicit specialization out of RunInfo
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Explicit specialization in non-namespace scope is not allowed in C++, and GCC breaks
-build because of that. Move the template specializations out of RunInfo declaration
-in shape_result_inline_headeres.h to fix the GCC build issue.
-
-Bug: 819294
-Change-Id: Id083852bcf8e9efbdc911fdad28fd8767d2905d0
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651728
-Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#667901}
----
- .../shaping/shape_result_inline_headers.h | 62 +++++++++----------
- 1 file changed, 31 insertions(+), 31 deletions(-)
-
-diff --git a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h
-index 76ee6091de6c..c14d3a02a9a7 100644
---- a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h
-+++ b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h
-@@ -251,37 +251,6 @@ struct ShapeResult::RunInfo : public RefCounted<ShapeResult::RunInfo> {
- template <bool has_non_zero_glyph_offsets>
- struct iterator final {};
-
-- // For non-zero glyph offset array
-- template <>
-- struct iterator<true> final {
-- // The constructor for ShapeResult
-- explicit iterator(const GlyphOffsetArray& array)
-- : pointer(array.storage_.get()) {
-- DCHECK(pointer);
-- }
--
-- // The constructor for ShapeResultView
-- explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) {
-- DCHECK(pointer);
-- }
--
-- GlyphOffset operator*() const { return *pointer; }
-- void operator++() { ++pointer; }
--
-- const GlyphOffset* pointer;
-- };
--
-- // For zero glyph offset array
-- template <>
-- struct iterator<false> final {
-- explicit iterator(const GlyphOffsetArray& array) {
-- DCHECK(!array.HasStorage());
-- }
-- explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); }
-- GlyphOffset operator*() const { return GlyphOffset(); }
-- void operator++() {}
-- };
--
- template <bool has_non_zero_glyph_offsets>
- iterator<has_non_zero_glyph_offsets> GetIterator() const {
- return iterator<has_non_zero_glyph_offsets>(*this);
-@@ -495,6 +464,37 @@ struct ShapeResult::RunInfo : public RefCounted<ShapeResult::RunInfo> {
- float width_;
- };
-
-+// For non-zero glyph offset array
-+template <>
-+struct ShapeResult::RunInfo::GlyphOffsetArray::iterator<true> final {
-+ // The constructor for ShapeResult
-+ explicit iterator(const GlyphOffsetArray& array)
-+ : pointer(array.storage_.get()) {
-+ DCHECK(pointer);
-+ }
-+
-+ // The constructor for ShapeResultView
-+ explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) {
-+ DCHECK(pointer);
-+ }
-+
-+ GlyphOffset operator*() const { return *pointer; }
-+ void operator++() { ++pointer; }
-+
-+ const GlyphOffset* pointer;
-+};
-+
-+// For zero glyph offset array
-+template <>
-+struct ShapeResult::RunInfo::GlyphOffsetArray::iterator<false> final {
-+ explicit iterator(const GlyphOffsetArray& array) {
-+ DCHECK(!array.HasStorage());
-+ }
-+ explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); }
-+ GlyphOffset operator*() const { return GlyphOffset(); }
-+ void operator++() {}
-+};
-+
- // Find the range of HarfBuzzRunGlyphData for the specified character index
- // range. This function uses binary search twice, hence O(2 log n).
- inline ShapeResult::RunInfo::GlyphDataRange
---
-2.21.0
-
diff --git a/chromium/chromium/chromium-gcc9-r668015.patch b/chromium/chromium/chromium-gcc9-r668015.patch
deleted file mode 100644
index ffd9b33..0000000
--- a/chromium/chromium/chromium-gcc9-r668015.patch
+++ /dev/null
@@ -1,72 +0,0 @@
-From 502e6e42633d2571c8236c8649b031fe9915eb5b Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Tue, 11 Jun 2019 16:56:27 +0000
-Subject: [PATCH] GCC: CertNetFetcherImpl declares Job as a friend but it is in
- the anonymous namespace
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-GCC does not allow friendship declaration to anonymous namespace as done with Job
-object in the CertNetFetcherImpl. This fix removes the friend declaration, and just
-makes RemoveJob method public, that was the only reason to make Job a friend.
-
-Error was:
-./../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::DetachRequest(net::CertNetFetcherImpl::RequestCore*)’:
-../../net/cert_net/cert_net_fetcher_impl.cc:458:42: error: ‘std::unique_ptr<net::{anonymous}::Job> net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context
- delete_this = parent_->RemoveJob(this);
- ^
-../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here
- std::unique_ptr<Job> RemoveJob(Job* job);
- ^~~~~~~~~
-../../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::OnJobCompleted(net::Error)’:
-../../net/cert_net/cert_net_fetcher_impl.cc:610:61: error: ‘std::unique_ptr<net::{anonymous}::Job> net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context
- std::unique_ptr<Job> delete_this = parent_->RemoveJob(this);
- ^
-../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here
- std::unique_ptr<Job> RemoveJob(Job* job);
- ^~~~~~~~~
-
-Bug: 819294
-Change-Id: I3609f4558e570741395366de6a4cd40577d91450
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651783
-Commit-Queue: Eric Roman <eroman@chromium.org>
-Reviewed-by: Eric Roman <eroman@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#668015}
----
- net/cert_net/cert_net_fetcher_impl.cc | 10 ++++------
- 1 file changed, 4 insertions(+), 6 deletions(-)
-
-diff --git a/net/cert_net/cert_net_fetcher_impl.cc b/net/cert_net/cert_net_fetcher_impl.cc
-index 11a1166a23a5..349c6562153e 100644
---- a/net/cert_net/cert_net_fetcher_impl.cc
-+++ b/net/cert_net/cert_net_fetcher_impl.cc
-@@ -135,21 +135,19 @@ class CertNetFetcherImpl::AsyncCertNetFetcherImpl {
- void Fetch(std::unique_ptr<RequestParams> request_params,
- scoped_refptr<RequestCore> request);
-
-+ // Removes |job| from the in progress jobs and transfers ownership to the
-+ // caller.
-+ std::unique_ptr<Job> RemoveJob(Job* job);
-+
- // Cancels outstanding jobs, which stops network requests and signals the
- // corresponding RequestCores that the requests have completed.
- void Shutdown();
-
- private:
-- friend class Job;
--
- // Finds a job with a matching RequestPararms or returns nullptr if there was
- // no match.
- Job* FindJob(const RequestParams& params);
-
-- // Removes |job| from the in progress jobs and transfers ownership to the
-- // caller.
-- std::unique_ptr<Job> RemoveJob(Job* job);
--
- // The in-progress jobs. This set does not contain the job which is actively
- // invoking callbacks (OnJobCompleted).
- JobSet jobs_;
---
-2.21.0
-
diff --git a/chromium/chromium/chromium-gcc9-r668033.patch b/chromium/chromium/chromium-gcc9-r668033.patch
deleted file mode 100644
index 822f1bd..0000000
--- a/chromium/chromium/chromium-gcc9-r668033.patch
+++ /dev/null
@@ -1,124 +0,0 @@
-From fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Tue, 11 Jun 2019 17:39:38 +0000
-Subject: [PATCH] GCC: do not use old C notation to assign struct with property
- names.
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The notation for initialization of structs referring to its properties
-is invalid in C++. This is not accepted in GCC. It was making build
-fail in VulkanCommandBuffer.
-
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::TransitionImageLayout(VkImage, VkImageLayout, VkImageLayout)':
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:214:7: error: expected primary-expression before '.' token
- .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT,
- ^
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:215:7: error: expected primary-expression before '.' token
- .subresourceRange.baseMipLevel = 0,
- ^
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:216:7: error: expected primary-expression before '.' token
- .subresourceRange.levelCount = 1,
- ^
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:217:7: error: expected primary-expression before '.' token
- .subresourceRange.baseArrayLayer = 0,
- ^
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:218:7: error: expected primary-expression before '.' token
- .subresourceRange.layerCount = 1,
- ^
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::CopyBufferToImage(VkBuffer, VkImage, uint32_t, uint32_t, uint32_t, uint32_t)':
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:235:7: error: expected primary-expression before '.' token
- .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT,
- ^
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:236:7: error: expected primary-expression before '.' token
- .imageSubresource.mipLevel = 0,
- ^
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:237:7: error: expected primary-expression before '.' token
- .imageSubresource.baseArrayLayer = 0,
- ^
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:238:7: error: expected primary-expression before '.' token
- .imageSubresource.layerCount = 1,
- ^
-Bug: 819294
-
-Change-Id: I999abece0c727e77964789183642ba62009c2c22
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651802
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Reviewed-by: Antoine Labour <piman@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#668033}
----
- gpu/vulkan/vulkan_command_buffer.cc | 50 ++++++++++++++---------------
- 1 file changed, 24 insertions(+), 26 deletions(-)
-
-diff --git a/gpu/vulkan/vulkan_command_buffer.cc b/gpu/vulkan/vulkan_command_buffer.cc
-index ba776e458f6a..4f14c85bb6ad 100644
---- a/gpu/vulkan/vulkan_command_buffer.cc
-+++ b/gpu/vulkan/vulkan_command_buffer.cc
-@@ -207,21 +207,20 @@ bool VulkanCommandBuffer::SubmissionFinished() {
- void VulkanCommandBuffer::TransitionImageLayout(VkImage image,
- VkImageLayout old_layout,
- VkImageLayout new_layout) {
-- VkImageMemoryBarrier barrier = {
-- .sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER,
-- .srcAccessMask = GetAccessMask(old_layout),
-- .dstAccessMask = GetAccessMask(new_layout),
-- .oldLayout = old_layout,
-- .newLayout = new_layout,
-- .srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED,
-- .dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED,
-- .image = image,
-- .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT,
-- .subresourceRange.baseMipLevel = 0,
-- .subresourceRange.levelCount = 1,
-- .subresourceRange.baseArrayLayer = 0,
-- .subresourceRange.layerCount = 1,
-- };
-+ VkImageMemoryBarrier barrier = {};
-+ barrier.sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER;
-+ barrier.srcAccessMask = GetAccessMask(old_layout);
-+ barrier.dstAccessMask = GetAccessMask(new_layout);
-+ barrier.oldLayout = old_layout;
-+ barrier.newLayout = new_layout;
-+ barrier.srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED;
-+ barrier.dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED;
-+ barrier.image = image;
-+ barrier.subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
-+ barrier.subresourceRange.baseMipLevel = 0;
-+ barrier.subresourceRange.levelCount = 1;
-+ barrier.subresourceRange.baseArrayLayer = 0;
-+ barrier.subresourceRange.layerCount = 1;
- vkCmdPipelineBarrier(command_buffer_, GetPipelineStageFlags(old_layout),
- GetPipelineStageFlags(new_layout), 0, 0, nullptr, 0,
- nullptr, 1, &barrier);
-@@ -233,17 +232,16 @@ void VulkanCommandBuffer::CopyBufferToImage(VkBuffer buffer,
- uint32_t buffer_height,
- uint32_t width,
- uint32_t height) {
-- VkBufferImageCopy region = {
-- .bufferOffset = 0,
-- .bufferRowLength = buffer_width,
-- .bufferImageHeight = buffer_height,
-- .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT,
-- .imageSubresource.mipLevel = 0,
-- .imageSubresource.baseArrayLayer = 0,
-- .imageSubresource.layerCount = 1,
-- .imageOffset = {0, 0, 0},
-- .imageExtent = {width, height, 1},
-- };
-+ VkBufferImageCopy region = {};
-+ region.bufferOffset = 0;
-+ region.bufferRowLength = buffer_width;
-+ region.bufferImageHeight = buffer_height;
-+ region.imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
-+ region.imageSubresource.mipLevel = 0;
-+ region.imageSubresource.baseArrayLayer = 0;
-+ region.imageSubresource.layerCount = 1;
-+ region.imageOffset = {0, 0, 0};
-+ region.imageExtent = {width, height, 1};
- vkCmdCopyBufferToImage(command_buffer_, buffer, image,
- VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, 1, &region);
- }
---
-2.21.0
-
diff --git a/chromium/chromium/chromium-gcc9-r670973.patch b/chromium/chromium/chromium-gcc9-r670973.patch
deleted file mode 100644
index 3c95802..0000000
--- a/chromium/chromium/chromium-gcc9-r670973.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From 138904af5d6a4158ef4247fda816a8035e621e59 Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Thu, 20 Jun 2019 18:35:02 +0000
-Subject: [PATCH] GCC: add noexcept move assignment in history::URLRow
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-In GCC, build is failing because history::QueryURLResult declares its move
-assignment operator as noexcept using default implementation. That requires
-its members to provide a move assignment operator that is noexcept too.
-
-But URLRow was missing noexcept declaration in move assignment operator (even
-though it was providing noexcept to its move constructor).
-
-Bug: 819294
-Change-Id: I726e3cf7a4a50c9206a5d0fba8a561d363483d4f
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651726
-Reviewed-by: Scott Violet <sky@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#670973}
----
- components/history/core/browser/url_row.cc | 2 +-
- components/history/core/browser/url_row.h | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/components/history/core/browser/url_row.cc b/components/history/core/browser/url_row.cc
-index 44c22fd1ee8a..aec010107838 100644
---- a/components/history/core/browser/url_row.cc
-+++ b/components/history/core/browser/url_row.cc
-@@ -26,7 +26,7 @@ URLRow::~URLRow() {
- }
-
- URLRow& URLRow::operator=(const URLRow& other) = default;
--URLRow& URLRow::operator=(URLRow&& other) = default;
-+URLRow& URLRow::operator=(URLRow&& other) noexcept = default;
-
- void URLRow::Swap(URLRow* other) {
- std::swap(id_, other->id_);
-diff --git a/components/history/core/browser/url_row.h b/components/history/core/browser/url_row.h
-index 8f6f9cf5a0da..31a1ef823e2c 100644
---- a/components/history/core/browser/url_row.h
-+++ b/components/history/core/browser/url_row.h
-@@ -35,7 +35,7 @@ class URLRow {
-
- virtual ~URLRow();
- URLRow& operator=(const URLRow& other);
-- URLRow& operator=(URLRow&& other);
-+ URLRow& operator=(URLRow&& other) noexcept;
-
- URLID id() const { return id_; }
-
---
-2.21.0
-
diff --git a/chromium/chromium/chromium-gcc9-r670980.patch b/chromium/chromium/chromium-gcc9-r670980.patch
deleted file mode 100644
index c7e9ee8..0000000
--- a/chromium/chromium/chromium-gcc9-r670980.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From 5d7f227fa844e79568df64e495e7ef958c12d7b2 Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Thu, 20 Jun 2019 18:50:49 +0000
-Subject: [PATCH] IWYU: ThemeService requires NativeTheme
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-As ThemeService referes to NativeTheme through a ScopedObserver,
-the full declaration is required.
-
-This is also a good opportunity to remove unneeded includes.
-
-Bug: 819294
-Change-Id: I9d5bd2e87cfaa76e87f9b5509daea24848906a63
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645362
-Reviewed-by: Evan Stade <estade@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#670980}
----
- chrome/browser/themes/theme_service.cc | 1 -
- chrome/browser/themes/theme_service.h | 3 +--
- 2 files changed, 1 insertion(+), 3 deletions(-)
-
-diff --git a/chrome/browser/themes/theme_service.cc b/chrome/browser/themes/theme_service.cc
-index 30694973893a..fdb21f91d53e 100644
---- a/chrome/browser/themes/theme_service.cc
-+++ b/chrome/browser/themes/theme_service.cc
-@@ -54,7 +54,6 @@
- #include "ui/gfx/color_palette.h"
- #include "ui/gfx/image/image_skia.h"
- #include "ui/native_theme/common_theme.h"
--#include "ui/native_theme/native_theme.h"
-
- #if BUILDFLAG(ENABLE_EXTENSIONS)
- #include "base/scoped_observer.h"
-diff --git a/chrome/browser/themes/theme_service.h b/chrome/browser/themes/theme_service.h
-index 13c0f863d268..103f83f1d428 100644
---- a/chrome/browser/themes/theme_service.h
-+++ b/chrome/browser/themes/theme_service.h
-@@ -7,9 +7,7 @@
-
- #include <map>
- #include <memory>
--#include <set>
- #include <string>
--#include <utility>
-
- #include "base/compiler_specific.h"
- #include "base/macros.h"
-@@ -25,6 +23,7 @@
- #include "extensions/buildflags/buildflags.h"
- #include "extensions/common/extension_id.h"
- #include "ui/base/theme_provider.h"
-+#include "ui/native_theme/native_theme.h"
- #include "ui/native_theme/native_theme_observer.h"
-
- class BrowserThemePack;
---
-2.21.0
-
diff --git a/chromium/chromium/chromium-gcc9-r681321.patch b/chromium/chromium/chromium-gcc9-r681321.patch
new file mode 100644
index 0000000..9c4f681
--- /dev/null
+++ b/chromium/chromium/chromium-gcc9-r681321.patch
@@ -0,0 +1,35 @@
+From 8c747a9c14ed4905f60f6680e2e09e33ea34163e Mon Sep 17 00:00:00 2001
+From: Jose Dapena Paz <jose.dapena@lge.com>
+Date: Fri, 26 Jul 2019 16:18:17 +0000
+Subject: [PATCH] IWYU: include <memory> in one_euro_filter.h as it uses
+ std::unique_ptr
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Bug: 819294
+Change-Id: Ie1530f7046b0c8eb76e26adca530fa57c67ed876
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1720637
+Reviewed-by: Ella Ge <eirage@chromium.org>
+Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
+Cr-Commit-Position: refs/heads/master@{#681321}
+---
+ third_party/one_euro_filter/src/one_euro_filter.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/third_party/one_euro_filter/src/one_euro_filter.h b/third_party/one_euro_filter/src/one_euro_filter.h
+index 7f8d15b62afa..a8cd0ab9a256 100644
+--- a/third_party/one_euro_filter/src/one_euro_filter.h
++++ b/third_party/one_euro_filter/src/one_euro_filter.h
+@@ -1,6 +1,8 @@
+ #ifndef ONE_EURO_ONE_EURO_FILTER_H_
+ #define ONE_EURO_ONE_EURO_FILTER_H_
+
++#include <memory>
++
+ #include "low_pass_filter.h"
+
+ namespace one_euro_filter {
+--
+2.21.0
+
diff --git a/chromium/chromium/chromium-gcc9-r681333.patch b/chromium/chromium/chromium-gcc9-r681333.patch
new file mode 100644
index 0000000..54e046f
--- /dev/null
+++ b/chromium/chromium/chromium-gcc9-r681333.patch
@@ -0,0 +1,71 @@
+From f08cb0022527081c078e8b96062e6c9b4fbda151 Mon Sep 17 00:00:00 2001
+From: Jose Dapena Paz <jose.dapena@lge.com>
+Date: Fri, 26 Jul 2019 16:48:06 +0000
+Subject: [PATCH] BinaryUploadService: change parameter passing that cannot
+ afford abstract class
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The method UploadForDeepScanning gets a Request as parameter. But Request is an
+abstract class, so GCC will not allow that declaration (polimorphycs should be
+passed by reference). Use std::unique_ptr so BinaryUploadService can assume
+ownership.
+
+Bug: 819294
+Change-Id: I9e8c75cc92b01abd704d9049b0421555377da5ba
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1713550
+Reviewed-by: Daniel Rubery <drubery@chromium.org>
+Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
+Cr-Commit-Position: refs/heads/master@{#681333}
+---
+ .../download_protection/binary_upload_service.cc | 2 +-
+ .../download_protection/binary_upload_service.h | 5 ++++-
+ 2 files changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc
+index 6430c89de49d..4e9048762366 100644
+--- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc
++++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc
+@@ -10,7 +10,7 @@
+ namespace safe_browsing {
+
+ void BinaryUploadService::UploadForDeepScanning(
+- BinaryUploadService::Request request) {
++ std::unique_ptr<BinaryUploadService::Request> request) {
+ DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
+ NOTREACHED();
+ }
+diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h
+index d2dfd83410c3..9b6f3958e1fe 100644
+--- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h
++++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h
+@@ -5,6 +5,8 @@
+ #ifndef CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_
+ #define CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_
+
++#include <memory>
++
+ #include "base/callback.h"
+ #include "components/safe_browsing/proto/webprotect.pb.h"
+
+@@ -40,6 +42,7 @@ class BinaryUploadService {
+ public:
+ // |callback| will run on the UI thread.
+ explicit Request(Callback callback);
++ virtual ~Request() = default;
+ Request(const Request&) = delete;
+ Request& operator=(const Request&) = delete;
+
+@@ -67,7 +70,7 @@ class BinaryUploadService {
+ // Upload the given file contents for deep scanning. The results will be
+ // returned asynchronously by calling |request|'s |callback|. This must be
+ // called on the UI thread.
+- void UploadForDeepScanning(Request request);
++ void UploadForDeepScanning(std::unique_ptr<Request> request);
+ };
+
+ } // namespace safe_browsing
+--
+2.21.0
+
diff --git a/chromium/chromium/chromium-gcc9-r684731.patch b/chromium/chromium/chromium-gcc9-r684731.patch
new file mode 100644
index 0000000..3f6fce4
--- /dev/null
+++ b/chromium/chromium/chromium-gcc9-r684731.patch
@@ -0,0 +1,138 @@
+From 74138b9febd37eac0fc26b8efb110014a83a52c6 Mon Sep 17 00:00:00 2001
+From: Jeremy Roman <jbroman@chromium.org>
+Date: Wed, 7 Aug 2019 13:26:48 +0000
+Subject: [PATCH] WTF: Make LinkedHashSet understand values for which memset
+ initialization would be bad.
+
+Includes a unit test which fails before, and uses this to fix FontCacheKeyTraits.
+
+Bug: 980025
+Change-Id: If41f97444c7fd37b9b95d6dadaf3da5689079e9e
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1739948
+Reviewed-by: Kentaro Hara <haraken@chromium.org>
+Reviewed-by: Yutaka Hirano <yhirano@chromium.org>
+Commit-Queue: Jeremy Roman <jbroman@chromium.org>
+Cr-Commit-Position: refs/heads/master@{#684731}
+---
+ .../renderer/platform/fonts/font_cache_key.h | 4 ++
+ .../renderer/platform/wtf/linked_hash_set.h | 10 ++++-
+ .../platform/wtf/list_hash_set_test.cc | 45 +++++++++++++++++--
+ 3 files changed, 55 insertions(+), 4 deletions(-)
+
+diff --git a/third_party/blink/renderer/platform/fonts/font_cache_key.h b/third_party/blink/renderer/platform/fonts/font_cache_key.h
+index 0efc8fb90941..90063cb2eacd 100644
+--- a/third_party/blink/renderer/platform/fonts/font_cache_key.h
++++ b/third_party/blink/renderer/platform/fonts/font_cache_key.h
+@@ -133,6 +133,10 @@ struct FontCacheKeyHash {
+
+ struct FontCacheKeyTraits : WTF::SimpleClassHashTraits<FontCacheKey> {
+ STATIC_ONLY(FontCacheKeyTraits);
++
++ // std::string's empty state need not be zero in all implementations,
++ // and it is held within FontFaceCreationParams.
++ static const bool kEmptyValueIsZero = false;
+ };
+
+ } // namespace blink
+diff --git a/third_party/blink/renderer/platform/wtf/linked_hash_set.h b/third_party/blink/renderer/platform/wtf/linked_hash_set.h
+index b35b6e95f1e4..77e524c0843b 100644
+--- a/third_party/blink/renderer/platform/wtf/linked_hash_set.h
++++ b/third_party/blink/renderer/platform/wtf/linked_hash_set.h
+@@ -146,6 +146,11 @@ class LinkedHashSetNode : public LinkedHashSetNodeBase {
+ LinkedHashSetNodeBase* next)
+ : LinkedHashSetNodeBase(prev, next), value_(value) {}
+
++ LinkedHashSetNode(ValueArg&& value,
++ LinkedHashSetNodeBase* prev,
++ LinkedHashSetNodeBase* next)
++ : LinkedHashSetNodeBase(prev, next), value_(std::move(value)) {}
++
+ LinkedHashSetNode(LinkedHashSetNode&& other)
+ : LinkedHashSetNodeBase(std::move(other)),
+ value_(std::move(other.value_)) {}
+@@ -445,10 +450,13 @@ struct LinkedHashSetTraits
+
+ // The slot is empty when the next_ field is zero so it's safe to zero
+ // the backing.
+- static const bool kEmptyValueIsZero = true;
++ static const bool kEmptyValueIsZero = ValueTraits::kEmptyValueIsZero;
+
+ static const bool kHasIsEmptyValueFunction = true;
+ static bool IsEmptyValue(const Node& node) { return !node.next_; }
++ static Node EmptyValue() {
++ return Node(ValueTraits::EmptyValue(), nullptr, nullptr);
++ }
+
+ static const int kDeletedValue = -1;
+
+diff --git a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc
+index 4c3f8990b01c..cd1be0089b98 100644
+--- a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc
++++ b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc
+@@ -487,6 +487,7 @@ struct Simple {
+ };
+
+ struct Complicated {
++ Complicated() : Complicated(0) {}
+ Complicated(int value) : simple_(value) { objects_constructed_++; }
+
+ Complicated(const Complicated& other) : simple_(other.simple_) {
+@@ -495,9 +496,6 @@ struct Complicated {
+
+ Simple simple_;
+ static int objects_constructed_;
+-
+- private:
+- Complicated() = delete;
+ };
+
+ int Complicated::objects_constructed_ = 0;
+@@ -731,4 +729,45 @@ TYPED_TEST(ListOrLinkedHashSetMoveOnlyTest, MoveOnlyValue) {
+
+ } // anonymous namespace
+
++// A unit type which objects to its state being initialized wrong.
++struct InvalidZeroValue {
++ InvalidZeroValue() = default;
++ InvalidZeroValue(WTF::HashTableDeletedValueType) : deleted_(true) {}
++ ~InvalidZeroValue() { CHECK(ok_); }
++ bool IsHashTableDeletedValue() const { return deleted_; }
++
++ bool ok_ = true;
++ bool deleted_ = false;
++};
++
++template <>
++struct HashTraits<InvalidZeroValue> : SimpleClassHashTraits<InvalidZeroValue> {
++ static const bool kEmptyValueIsZero = false;
++};
++
++template <>
++struct DefaultHash<InvalidZeroValue> {
++ struct Hash {
++ static unsigned GetHash(const InvalidZeroValue&) { return 0; }
++ static bool Equal(const InvalidZeroValue&, const InvalidZeroValue&) {
++ return true;
++ }
++ };
++};
++
++template <typename Set>
++class ListOrLinkedHashSetInvalidZeroTest : public testing::Test {};
++
++using InvalidZeroValueSetTypes =
++ testing::Types<ListHashSet<InvalidZeroValue>,
++ ListHashSet<InvalidZeroValue, 1>,
++ LinkedHashSet<InvalidZeroValue>>;
++TYPED_TEST_SUITE(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValueSetTypes);
++
++TYPED_TEST(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValue) {
++ using Set = TypeParam;
++ Set set;
++ set.insert(InvalidZeroValue());
++}
++
+ } // namespace WTF
+--
+2.21.0
+
diff --git a/chromium/chromium/chromium-quiche-gcc9.patch b/chromium/chromium/chromium-quiche-gcc9.patch
deleted file mode 100644
index b413c7a..0000000
--- a/chromium/chromium/chromium-quiche-gcc9.patch
+++ /dev/null
@@ -1,245 +0,0 @@
-From 9424add9d73432a794b7944790253213cce6dcb8 Mon Sep 17 00:00:00 2001
-From: danzh <danzh@google.com>
-Date: Thu, 6 Jun 2019 14:04:36 -0700
-Subject: [PATCH] gfe-relnote: (n/a) code cleanup. Fix envoy compile errors.
-
-Add #include header for std library.
-Reference TransportParameters when using its enum TransportParameterId.
-
-PiperOrigin-RevId: 251922363
-Change-Id: Iba38660e5adc3069e377829acec44267658b11c6
----
- quic/core/crypto/transport_parameters.cc | 76 ++++++++++++------------
- quic/core/quic_socket_address_coder.cc | 6 +-
- 2 files changed, 42 insertions(+), 40 deletions(-)
-
-diff --git a/quic/core/crypto/transport_parameters.cc b/quic/core/crypto/transport_parameters.cc
-index ee0ebf0..e5df9fe 100644
---- a/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc
-+++ b/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc
-@@ -62,37 +62,37 @@ const size_t kStatelessResetTokenLength = 16;
- std::string TransportParameterIdToString(
- TransportParameters::TransportParameterId param_id) {
- switch (param_id) {
-- case kOriginalConnectionId:
-+ case TransportParameters::kOriginalConnectionId:
- return "original_connection_id";
-- case kIdleTimeout:
-+ case TransportParameters::kIdleTimeout:
- return "idle_timeout";
-- case kStatelessResetToken:
-+ case TransportParameters::kStatelessResetToken:
- return "stateless_reset_token";
-- case kMaxPacketSize:
-+ case TransportParameters::kMaxPacketSize:
- return "max_packet_size";
-- case kInitialMaxData:
-+ case TransportParameters::kInitialMaxData:
- return "initial_max_data";
-- case kInitialMaxStreamDataBidiLocal:
-+ case TransportParameters::kInitialMaxStreamDataBidiLocal:
- return "initial_max_stream_data_bidi_local";
-- case kInitialMaxStreamDataBidiRemote:
-+ case TransportParameters::kInitialMaxStreamDataBidiRemote:
- return "initial_max_stream_data_bidi_remote";
-- case kInitialMaxStreamDataUni:
-+ case TransportParameters::kInitialMaxStreamDataUni:
- return "initial_max_stream_data_uni";
-- case kInitialMaxStreamsBidi:
-+ case TransportParameters::kInitialMaxStreamsBidi:
- return "initial_max_streams_bidi";
-- case kInitialMaxStreamsUni:
-+ case TransportParameters::kInitialMaxStreamsUni:
- return "initial_max_streams_uni";
-- case kAckDelayExponent:
-+ case TransportParameters::kAckDelayExponent:
- return "ack_delay_exponent";
-- case kMaxAckDelay:
-+ case TransportParameters::kMaxAckDelay:
- return "max_ack_delay";
-- case kDisableMigration:
-+ case TransportParameters::kDisableMigration:
- return "disable_migration";
-- case kPreferredAddress:
-+ case TransportParameters::kPreferredAddress:
- return "preferred_address";
-- case kGoogleQuicParam:
-+ case TransportParameters::kGoogleQuicParam:
- return "google";
-- case kGoogleQuicVersion:
-+ case TransportParameters::kGoogleQuicVersion:
- return "google-version";
- }
- return "Unknown(" + QuicTextUtils::Uint64ToString(param_id) + ")";
-@@ -390,7 +390,7 @@ bool SerializeTransportParameters(const TransportParameters& in,
- CBB original_connection_id_param;
- if (!in.original_connection_id.IsEmpty()) {
- DCHECK_EQ(Perspective::IS_SERVER, in.perspective);
-- if (!CBB_add_u16(&params, kOriginalConnectionId) ||
-+ if (!CBB_add_u16(&params, TransportParameters::kOriginalConnectionId) ||
- !CBB_add_u16_length_prefixed(&params, &original_connection_id_param) ||
- !CBB_add_bytes(
- &original_connection_id_param,
-@@ -412,7 +412,7 @@ bool SerializeTransportParameters(const TransportParameters& in,
- if (!in.stateless_reset_token.empty()) {
- DCHECK_EQ(kStatelessResetTokenLength, in.stateless_reset_token.size());
- DCHECK_EQ(Perspective::IS_SERVER, in.perspective);
-- if (!CBB_add_u16(&params, kStatelessResetToken) ||
-+ if (!CBB_add_u16(&params, TransportParameters::kStatelessResetToken) ||
- !CBB_add_u16_length_prefixed(&params, &stateless_reset_token_param) ||
- !CBB_add_bytes(&stateless_reset_token_param,
- in.stateless_reset_token.data(),
-@@ -438,7 +438,7 @@ bool SerializeTransportParameters(const TransportParameters& in,
-
- // disable_migration
- if (in.disable_migration) {
-- if (!CBB_add_u16(&params, kDisableMigration) ||
-+ if (!CBB_add_u16(&params, TransportParameters::kDisableMigration) ||
- !CBB_add_u16(&params, 0u)) { // 0 is the length of this parameter.
- QUIC_BUG << "Failed to write disable_migration for " << in;
- return false;
-@@ -458,7 +458,7 @@ bool SerializeTransportParameters(const TransportParameters& in,
- QUIC_BUG << "Bad lengths " << *in.preferred_address;
- return false;
- }
-- if (!CBB_add_u16(&params, kPreferredAddress) ||
-+ if (!CBB_add_u16(&params, TransportParameters::kPreferredAddress) ||
- !CBB_add_u16_length_prefixed(&params, &preferred_address_params) ||
- !CBB_add_bytes(
- &preferred_address_params,
-@@ -491,7 +491,7 @@ bool SerializeTransportParameters(const TransportParameters& in,
- if (in.google_quic_params) {
- const QuicData& serialized_google_quic_params =
- in.google_quic_params->GetSerialized();
-- if (!CBB_add_u16(&params, kGoogleQuicParam) ||
-+ if (!CBB_add_u16(&params, TransportParameters::kGoogleQuicParam) ||
- !CBB_add_u16_length_prefixed(&params, &google_quic_params) ||
- !CBB_add_bytes(&google_quic_params,
- reinterpret_cast<const uint8_t*>(
-@@ -505,7 +505,7 @@ bool SerializeTransportParameters(const TransportParameters& in,
-
- // Google-specific version extension.
- CBB google_version_params;
-- if (!CBB_add_u16(&params, kGoogleQuicVersion) ||
-+ if (!CBB_add_u16(&params, TransportParameters::kGoogleQuicVersion) ||
- !CBB_add_u16_length_prefixed(&params, &google_version_params) ||
- !CBB_add_u32(&google_version_params, in.version)) {
- QUIC_BUG << "Failed to write Google version extension for " << in;
-@@ -565,7 +565,7 @@ bool ParseTransportParameters(const uint8_t* in,
- }
- bool parse_success = true;
- switch (param_id) {
-- case kOriginalConnectionId:
-+ case TransportParameters::kOriginalConnectionId:
- if (!out->original_connection_id.IsEmpty()) {
- QUIC_DLOG(ERROR) << "Received a second original connection ID";
- return false;
-@@ -581,10 +581,10 @@ bool ParseTransportParameters(const uint8_t* in,
- CBS_len(&value));
- }
- break;
-- case kIdleTimeout:
-+ case TransportParameters::kIdleTimeout:
- parse_success = out->idle_timeout_milliseconds.ReadFromCbs(&value);
- break;
-- case kStatelessResetToken:
-+ case TransportParameters::kStatelessResetToken:
- if (!out->stateless_reset_token.empty()) {
- QUIC_DLOG(ERROR) << "Received a second stateless reset token";
- return false;
-@@ -597,36 +597,36 @@ bool ParseTransportParameters(const uint8_t* in,
- out->stateless_reset_token.assign(CBS_data(&value),
- CBS_data(&value) + CBS_len(&value));
- break;
-- case kMaxPacketSize:
-+ case TransportParameters::kMaxPacketSize:
- parse_success = out->max_packet_size.ReadFromCbs(&value);
- break;
-- case kInitialMaxData:
-+ case TransportParameters::kInitialMaxData:
- parse_success = out->initial_max_data.ReadFromCbs(&value);
- break;
-- case kInitialMaxStreamDataBidiLocal:
-+ case TransportParameters::kInitialMaxStreamDataBidiLocal:
- parse_success =
- out->initial_max_stream_data_bidi_local.ReadFromCbs(&value);
- break;
-- case kInitialMaxStreamDataBidiRemote:
-+ case TransportParameters::kInitialMaxStreamDataBidiRemote:
- parse_success =
- out->initial_max_stream_data_bidi_remote.ReadFromCbs(&value);
- break;
-- case kInitialMaxStreamDataUni:
-+ case TransportParameters::kInitialMaxStreamDataUni:
- parse_success = out->initial_max_stream_data_uni.ReadFromCbs(&value);
- break;
-- case kInitialMaxStreamsBidi:
-+ case TransportParameters::kInitialMaxStreamsBidi:
- parse_success = out->initial_max_streams_bidi.ReadFromCbs(&value);
- break;
-- case kInitialMaxStreamsUni:
-+ case TransportParameters::kInitialMaxStreamsUni:
- parse_success = out->initial_max_streams_uni.ReadFromCbs(&value);
- break;
-- case kAckDelayExponent:
-+ case TransportParameters::kAckDelayExponent:
- parse_success = out->ack_delay_exponent.ReadFromCbs(&value);
- break;
-- case kMaxAckDelay:
-+ case TransportParameters::kMaxAckDelay:
- parse_success = out->max_ack_delay.ReadFromCbs(&value);
- break;
-- case kDisableMigration:
-+ case TransportParameters::kDisableMigration:
- if (out->disable_migration) {
- QUIC_DLOG(ERROR) << "Received a second disable migration";
- return false;
-@@ -638,7 +638,7 @@ bool ParseTransportParameters(const uint8_t* in,
- }
- out->disable_migration = true;
- break;
-- case kPreferredAddress: {
-+ case TransportParameters::kPreferredAddress: {
- uint16_t ipv4_port, ipv6_port;
- in_addr ipv4_address;
- in6_addr ipv6_address;
-@@ -692,7 +692,7 @@ bool ParseTransportParameters(const uint8_t* in,
- QuicMakeUnique<TransportParameters::PreferredAddress>(
- preferred_address);
- } break;
-- case kGoogleQuicParam: {
-+ case TransportParameters::kGoogleQuicParam: {
- if (out->google_quic_params) {
- QUIC_DLOG(ERROR) << "Received a second Google parameter";
- return false;
-@@ -701,7 +701,7 @@ bool ParseTransportParameters(const uint8_t* in,
- reinterpret_cast<const char*>(CBS_data(&value)), CBS_len(&value));
- out->google_quic_params = CryptoFramer::ParseMessage(serialized_params);
- } break;
-- case kGoogleQuicVersion: {
-+ case TransportParameters::kGoogleQuicVersion: {
- if (!CBS_get_u32(&value, &out->version)) {
- QUIC_DLOG(ERROR) << "Failed to parse Google version extension";
- return false;
-diff --git a/quic/core/quic_socket_address_coder.cc b/quic/core/quic_socket_address_coder.cc
-index 2527fc9..b26103d 100644
---- a/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc
-+++ b/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc
-@@ -2,10 +2,12 @@
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
-
--#include <string>
--
- #include "net/third_party/quiche/src/quic/core/quic_socket_address_coder.h"
-
-+#include <cstring>
-+#include <string>
-+#include <vector>
-+
- namespace quic {
-
- namespace {
---
-2.21.0
-
diff --git a/chromium/chromium/chromium-unbundle-zlib.patch b/chromium/chromium/chromium-unbundle-zlib.patch
new file mode 100644
index 0000000..d6c45ad
--- /dev/null
+++ b/chromium/chromium/chromium-unbundle-zlib.patch
@@ -0,0 +1,25 @@
+From e1bbdec720a333937bd1b990ae0f7ee97db0d3b0 Mon Sep 17 00:00:00 2001
+From: Your Name <you@example.com>
+Date: Fri, 28 Jun 2019 15:56:23 +0000
+Subject: [PATCH] update zlib
+
+---
+ third_party/perfetto/gn/BUILD.gn | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/third_party/perfetto/gn/BUILD.gn b/third_party/perfetto/gn/BUILD.gn
+index c951f5f..297eee3 100644
+--- a/third_party/perfetto/gn/BUILD.gn
++++ b/third_party/perfetto/gn/BUILD.gn
+@@ -200,7 +200,7 @@ group("zlib") {
+ "//buildtools:zlib",
+ ]
+ } else if (build_with_chromium) {
+- public_configs = [ "//third_party/zlib:zlib_config" ]
++ public_configs = [ "//third_party/zlib:system_zlib" ]
+ public_deps = [
+ "//third_party/zlib",
+ ]
+--
+2.21.0
+
diff --git a/chromium/chromium/chromium.spec b/chromium/chromium/chromium.spec
index 243f9b0..c6f9635 100644
--- a/chromium/chromium/chromium.spec
+++ b/chromium/chromium/chromium.spec
@@ -8,8 +8,8 @@
# Get the version number of latest stable version
# $ curl -s 'https://omahaproxy.appspot.com/all?os=linux&channel=stable' | sed 1d | cut -d , -f 3
-# Require harfbuzz >= 2.0.0 for hb_ot_tags_from_script_and_language
-%if 0%{?fedora} >= 30
+# Require harfbuzz >= 2.4.0 for hb_subset_input_set_retain_gids
+%if 0%{?fedora} >= 31
%bcond_without system_harfbuzz
%else
%bcond_with system_harfbuzz
@@ -47,7 +47,7 @@
%bcond_with fedora_compilation_flags
Name: chromium
-Version: 76.0.3809.132
+Version: 77.0.3865.75
Release: 100%{?dist}
Summary: A WebKit (Blink) powered web browser
@@ -102,23 +102,15 @@ Patch20: chromium-python2.patch
# https://src.fedoraproject.org/rpms/chromium/c/9071ee2d2f996b84
Patch30: chromium-webrtc-cstring.patch
+# Pull patches from Gentoo
+# https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5b7b57438d399738
+Patch40: chromium-unbundle-zlib.patch
+Patch41: chromium-base-location.patch
+
# Pull upstream patches
-Patch40: chromium-quiche-gcc9.patch
-Patch41: chromium-gcc9-r666279.patch
-Patch42: chromium-gcc9-r666336.patch
-Patch43: chromium-gcc9-r666401.patch
-Patch44: chromium-gcc9-r666436.patch
-Patch45: chromium-gcc9-r666619.patch
-Patch46: chromium-gcc9-r666714.patch
-Patch47: chromium-gcc9-r667064.patch
-Patch48: chromium-gcc9-r667228.patch
-Patch49: chromium-gcc9-r667260.patch
-Patch50: chromium-gcc9-r667484.patch
-Patch51: chromium-gcc9-r667901.patch
-Patch52: chromium-gcc9-r668015.patch
-Patch53: chromium-gcc9-r668033.patch
-Patch54: chromium-gcc9-r670973.patch
-Patch55: chromium-gcc9-r670980.patch
+Patch50: chromium-gcc9-r681321.patch
+Patch51: chromium-gcc9-r681333.patch
+Patch52: chromium-gcc9-r684731.patch
# I don't have time to test whether it work on other architectures
ExclusiveArch: x86_64
@@ -146,8 +138,8 @@ BuildRequires: pkgconfig(gnome-keyring-1)
BuildRequires: pkgconfig(libffi)
# remove_bundled_libraries.py --do-remove
BuildRequires: python2-rpm-macros
-BuildRequires: python-beautifulsoup4
-BuildRequires: python-html5lib
+BuildRequires: python2-beautifulsoup4
+BuildRequires: python2-html5lib
BuildRequires: python2-markupsafe
%if %{with system_ply}
BuildRequires: python2-ply
@@ -350,8 +342,10 @@ find -type f -exec \
third_party/nasm \
third_party/node \
third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2 \
+ third_party/one_euro_filter \
third_party/openh264 \
third_party/openscreen \
+ third_party/openscreen/src/third_party/tinycbor/src/src \
third_party/ots \
third_party/pdfium \
third_party/pdfium/third_party/agg23 \
@@ -391,8 +385,10 @@ find -type f -exec \
third_party/SPIRV-Tools \
third_party/sqlite \
third_party/swiftshader \
+ third_party/swiftshader/third_party/llvm-7.0 \
third_party/swiftshader/third_party/llvm-subzero \
third_party/swiftshader/third_party/subzero \
+ third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1 \
third_party/tcmalloc \
third_party/unrar \
third_party/usb_ids \
@@ -602,7 +598,7 @@ for i in 16 32; do
install -m 644 chrome/app/theme/default_100_percent/chromium/product_logo_$i.png \
%{buildroot}%{_datadir}/icons/hicolor/${i}x${i}/apps/chromium-browser.png
done
-for i in 22 24 32 48 64 128 256; do
+for i in 24 32 48 64 128 256; do
if [ ${i} = 32 ]; then ext=xpm; else ext=png; fi
if [ ${i} = 32 ]; then dir=linux/; else dir=; fi
mkdir -p %{buildroot}%{_datadir}/icons/hicolor/${i}x${i}/apps
@@ -633,7 +629,6 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%{_datadir}/applications/chromium-browser.desktop
%{_datadir}/gnome-control-center/default-apps/chromium-browser.xml
%{_datadir}/icons/hicolor/16x16/apps/chromium-browser.png
-%{_datadir}/icons/hicolor/22x22/apps/chromium-browser.png
%{_datadir}/icons/hicolor/24x24/apps/chromium-browser.png
%{_datadir}/icons/hicolor/32x32/apps/chromium-browser.png
%{_datadir}/icons/hicolor/32x32/apps/chromium-browser.xpm
@@ -664,10 +659,15 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%dir %{chromiumdir}/swiftshader
%{chromiumdir}/swiftshader/libEGL.so
%{chromiumdir}/swiftshader/libGLESv2.so
+%{chromiumdir}/swiftshader/libvulkan.so
%changelog
+* Wed Sep 11 2019 - Ting-Wei Lan <lantw44@gmail.com> - 77.0.3865.75-100
+- Update to 77.0.3865.75
+- Fix python package names for Fedora 31
+
* Tue Aug 27 2019 - Ting-Wei Lan <lantw44@gmail.com> - 76.0.3809.132-100
- Update to 76.0.3809.132