commit
83eb914815
@ -1,30 +0,0 @@
|
||||
From 00f47df999c9b19e80fdc01db0ae9ca1b6a12b3a Mon Sep 17 00:00:00 2001
|
||||
From: vasilvv <vasilvv@google.com>
|
||||
Date: Wed, 03 Apr 2019 13:58:53 -0700
|
||||
Subject: [PATCH] GCC: do not delete move constructor of QuicStreamSendBuffer
|
||||
|
||||
QuicStreamSendBuffer constructor is implicitely required in the
|
||||
initialization of the vector of substreams in QuicCryptoStream.
|
||||
Though clang apparently ignores that, GCC fails to build.
|
||||
|
||||
BUG=chromium:819294
|
||||
|
||||
Originally submitted by José Dapena Paz <jose.dapena@lge.com> at https://quiche-review.googlesource.com/c/quiche/+/2420
|
||||
|
||||
PiperOrigin-RevId: 241800134
|
||||
Change-Id: I4e3c97d6e5895d85340e8c1b740e6196d9104066
|
||||
---
|
||||
|
||||
diff --git a/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h b/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h
|
||||
index e34514b..74e9d0d 100644
|
||||
--- a/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h
|
||||
+++ b/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h
|
||||
@@ -62,7 +62,7 @@
|
||||
public:
|
||||
explicit QuicStreamSendBuffer(QuicBufferAllocator* allocator);
|
||||
QuicStreamSendBuffer(const QuicStreamSendBuffer& other) = delete;
|
||||
- QuicStreamSendBuffer(QuicStreamSendBuffer&& other) = delete;
|
||||
+ QuicStreamSendBuffer(QuicStreamSendBuffer&& other) = default;
|
||||
~QuicStreamSendBuffer();
|
||||
|
||||
// Save |data_length| of data starts at |iov_offset| in |iov| to send buffer.
|
@ -1,45 +0,0 @@
|
||||
diff -up chromium-83.0.4103.97/third_party/skia/include/private/SkVx.h.gcc10-aarch64-hack chromium-83.0.4103.97/third_party/skia/include/private/SkVx.h
|
||||
--- chromium-83.0.4103.97/third_party/skia/include/private/SkVx.h.gcc10-aarch64-hack 2020-06-18 14:47:30.912177044 +0000
|
||||
+++ chromium-83.0.4103.97/third_party/skia/include/private/SkVx.h 2020-06-18 14:51:08.230506417 +0000
|
||||
@@ -141,6 +141,15 @@ static inline D bit_pun(const S& s) {
|
||||
return d;
|
||||
}
|
||||
|
||||
+// This is a hack to work around GCC PR95726
|
||||
+template <typename D, typename S>
|
||||
+static inline D bit_pun2(const S& s) {
|
||||
+ static_assert(sizeof(D) == sizeof(S), "");
|
||||
+ D d;
|
||||
+ memcpy(&d, &s, sizeof(D));
|
||||
+ return d;
|
||||
+}
|
||||
+
|
||||
// Translate from a value type T to its corresponding Mask, the result of a comparison.
|
||||
template <typename T> struct Mask { using type = T; };
|
||||
template <> struct Mask<float > { using type = int32_t; };
|
||||
@@ -554,9 +563,9 @@ static inline Vec<N,uint8_t> approx_scal
|
||||
static inline Vec<4,float> if_then_else(const Vec<4,int >& c,
|
||||
const Vec<4,float>& t,
|
||||
const Vec<4,float>& e) {
|
||||
- return bit_pun<Vec<4,float>>(vbslq_f32(bit_pun<uint32x4_t> (c),
|
||||
- bit_pun<float32x4_t>(t),
|
||||
- bit_pun<float32x4_t>(e)));
|
||||
+ return bit_pun<Vec<4,float>>(vbslq_f32(bit_pun2<uint32x4_t> (c),
|
||||
+ bit_pun2<float32x4_t>(t),
|
||||
+ bit_pun2<float32x4_t>(e)));
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -581,9 +590,9 @@ static inline Vec<N,uint8_t> approx_scal
|
||||
const Vec<4,float>& y,
|
||||
const Vec<4,float>& z) {
|
||||
// These instructions tend to work like z += xy, so the order here is z,x,y.
|
||||
- return bit_pun<Vec<4,float>>(vfmaq_f32(bit_pun<float32x4_t>(z),
|
||||
- bit_pun<float32x4_t>(x),
|
||||
- bit_pun<float32x4_t>(y)));
|
||||
+ return bit_pun<Vec<4,float>>(vfmaq_f32(bit_pun2<float32x4_t>(z),
|
||||
+ bit_pun2<float32x4_t>(x),
|
||||
+ bit_pun2<float32x4_t>(y)));
|
||||
}
|
||||
#endif
|
||||
|
@ -1,30 +0,0 @@
|
||||
diff -up chromium-85.0.4183.102/net/cookies/cookie_monster.cc.fixme chromium-85.0.4183.102/net/cookies/cookie_monster.cc
|
||||
--- chromium-85.0.4183.102/net/cookies/cookie_monster.cc.fixme 2020-09-21 14:52:06.606722391 -0400
|
||||
+++ chromium-85.0.4183.102/net/cookies/cookie_monster.cc 2020-09-21 14:53:40.247366159 -0400
|
||||
@@ -1151,9 +1151,14 @@ CookieMonster::CookieMap::iterator Cooki
|
||||
// |num_keys_| counter.
|
||||
bool different_prev =
|
||||
inserted == cookies_.begin() || std::prev(inserted)->first != key;
|
||||
- bool different_next =
|
||||
- inserted == cookies_.end() || std::next(inserted)->first != key;
|
||||
- if (different_prev && different_next)
|
||||
+ // According to std::multiqueue documentation:
|
||||
+ // "If the container has elements with equivalent key, inserts at the upper
|
||||
+ // bound of that range. (since C++11)"
|
||||
+ // This means that "inserted" iterator either points to the last element in
|
||||
+ // the map, or the element succeeding it has to have different key.
|
||||
+ DCHECK(std::next(inserted) == cookies_.end() ||
|
||||
+ std::next(inserted)->first != key);
|
||||
+ if (different_prev)
|
||||
++num_keys_;
|
||||
|
||||
return inserted;
|
||||
@@ -1373,7 +1378,7 @@ void CookieMonster::InternalDeleteCookie
|
||||
bool different_prev =
|
||||
it == cookies_.begin() || std::prev(it)->first != it->first;
|
||||
bool different_next =
|
||||
- it == cookies_.end() || std::next(it)->first != it->first;
|
||||
+ std::next(it) == cookies_.end() || std::next(it)->first != it->first;
|
||||
if (different_prev && different_next)
|
||||
--num_keys_;
|
||||
|
@ -1,31 +0,0 @@
|
||||
From 2879a6ba43b65c33e3c02432b4ae7a7462d24096 Mon Sep 17 00:00:00 2001
|
||||
From: Stephan Hartmann <stha09@googlemail.com>
|
||||
Date: Fri, 28 Aug 2020 07:23:29 +0000
|
||||
Subject: [PATCH] GCC: fix ImageMemoryBarrierData initialization
|
||||
|
||||
GCC can't convert constant string to char[40]. Use const char * instead.
|
||||
Otherwise fails like this:
|
||||
|
||||
src/libANGLE/renderer/vulkan/vk_helpers.cpp:121:1: error: could not convert
|
||||
'...' from '<brace-enclosed initializer list>' to
|
||||
'const angle::PackedEnumMap<rx::vk::ImageLayout, rx::vk::{anonymous}::ImageMemoryBarrierData>'
|
||||
---
|
||||
third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp b/third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp
|
||||
index af957d7..7fe82ae 100644
|
||||
--- a/third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp
|
||||
+++ b/third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp
|
||||
@@ -73,7 +73,7 @@ enum BarrierType
|
||||
|
||||
struct ImageMemoryBarrierData
|
||||
{
|
||||
- char name[40];
|
||||
+ const char *name;
|
||||
|
||||
// The Vk layout corresponding to the ImageLayout key.
|
||||
VkImageLayout layout;
|
||||
--
|
||||
2.26.2
|
||||
|
@ -1,25 +0,0 @@
|
||||
From 849e5c6b3a8746d9205102bd3df4e140cead405a Mon Sep 17 00:00:00 2001
|
||||
From: Stephan Hartmann <stha09@googlemail.com>
|
||||
Date: Sat, 18 Jul 2020 15:11:13 +0000
|
||||
Subject: [PATCH] GCC: remove explicit from AtomicReference constructor
|
||||
|
||||
---
|
||||
.../nearby/src/cpp/platform_v2/public/atomic_reference.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/third_party/nearby/src/cpp/platform_v2/public/atomic_reference.h b/third_party/nearby/src/cpp/platform_v2/public/atomic_reference.h
|
||||
index 5742724..bbb8c01 100644
|
||||
--- a/third_party/nearby/src/cpp/platform_v2/public/atomic_reference.h
|
||||
+++ b/third_party/nearby/src/cpp/platform_v2/public/atomic_reference.h
|
||||
@@ -37,7 +37,7 @@ class AtomicReference<T, std::enable_if_t<sizeof(T) <= sizeof(std::uint32_t) &&
|
||||
final {
|
||||
public:
|
||||
using Platform = api::ImplementationPlatform;
|
||||
- explicit AtomicReference(T value)
|
||||
+ AtomicReference(T value)
|
||||
: impl_(Platform::CreateAtomicUint32(static_cast<std::uint32_t>(value))) {
|
||||
}
|
||||
~AtomicReference() = default;
|
||||
--
|
||||
2.26.2
|
||||
|
@ -1,24 +0,0 @@
|
||||
From a5b2ee9dd7dfb186e26ec6c0c06c2ae1a9d27195 Mon Sep 17 00:00:00 2001
|
||||
From: Stephan Hartmann <stha09@googlemail.com>
|
||||
Date: Sat, 18 Jul 2020 14:15:50 +0000
|
||||
Subject: [PATCH] IWYU: memcpy is defined in cstring
|
||||
|
||||
---
|
||||
third_party/nearby/src/cpp/platform_v2/base/byte_array.h | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/third_party/nearby/src/cpp/platform_v2/base/byte_array.h b/third_party/nearby/src/cpp/platform_v2/base/byte_array.h
|
||||
index ee5d0eb..4b1d79b 100644
|
||||
--- a/third_party/nearby/src/cpp/platform_v2/base/byte_array.h
|
||||
+++ b/third_party/nearby/src/cpp/platform_v2/base/byte_array.h
|
||||
@@ -17,6 +17,7 @@
|
||||
|
||||
#include <array>
|
||||
#include <cstdint>
|
||||
+#include <cstring>
|
||||
#include <string>
|
||||
#include <type_traits>
|
||||
#include <utility>
|
||||
--
|
||||
2.26.2
|
||||
|
@ -0,0 +1,22 @@
|
||||
Bug: https://bugs.gentoo.org/750038
|
||||
Upstream bug: https://crbug.com/1135070
|
||||
|
||||
--- a/content/browser/service_worker/service_worker_container_host.cc
|
||||
+++ b/content/browser/service_worker/service_worker_container_host.cc
|
||||
@@ -626,6 +626,16 @@
|
||||
int64_t registration_id) {
|
||||
DCHECK_CURRENTLY_ON(ServiceWorkerContext::GetCoreThreadId());
|
||||
DCHECK(base::Contains(registration_object_hosts_, registration_id));
|
||||
+
|
||||
+ // ServiceWorkerRegistrationObjectHost to be deleted may have the last reference to
|
||||
+ // ServiceWorkerRegistration that indirectly owns this ServiceWorkerContainerHost.
|
||||
+ // If we erase the object host directly from the map, |this| could be deleted
|
||||
+ // during the map operation and may crash. To avoid the case, we take the
|
||||
+ // ownership of the object host from the map first, and then erase the entry
|
||||
+ // from the map. See https://crbug.com/1135070 for details.
|
||||
+ std::unique_ptr<ServiceWorkerRegistrationObjectHost> to_be_deleted =
|
||||
+ std::move(registration_object_hosts_[registration_id]);
|
||||
+ DCHECK(to_be_deleted);
|
||||
registration_object_hosts_.erase(registration_id);
|
||||
}
|
||||
|
@ -0,0 +1,39 @@
|
||||
From 4f4604877f3b666ac7a373ae443e3c3795424569 Mon Sep 17 00:00:00 2001
|
||||
From: Stephan Hartmann <stha09@googlemail.com>
|
||||
Date: Fri, 6 Nov 2020 11:18:42 +0000
|
||||
Subject: [PATCH] GCC: fix attribute on function definition
|
||||
|
||||
GCC does not accept attributes at the end for function definitions.
|
||||
Solution is to move it before function name. Otherwise GCC fails like
|
||||
this:
|
||||
|
||||
../../base/compiler_specific.h:97:28: error: attributes are not allowed
|
||||
on a function-definition
|
||||
97 | #define WARN_UNUSED_RESULT __attribute__((warn_unused_result))
|
||||
| ^~~~~~~~~~~~~
|
||||
../../media/gpu/vaapi/vaapi_wrapper.h:322:36: note: in
|
||||
expansion of macro 'WARN_UNUSED_RESULT'
|
||||
322 | const T* data) WARN_UNUSED_RESULT {
|
||||
| ^~~~~~~~~~~~~~~~~~
|
||||
---
|
||||
media/gpu/vaapi/vaapi_wrapper.h | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/media/gpu/vaapi/vaapi_wrapper.h b/media/gpu/vaapi/vaapi_wrapper.h
|
||||
index fd1fd82..deeda1f 100644
|
||||
--- a/media/gpu/vaapi/vaapi_wrapper.h
|
||||
+++ b/media/gpu/vaapi/vaapi_wrapper.h
|
||||
@@ -318,8 +318,8 @@ class MEDIA_GPU_EXPORT VaapiWrapper
|
||||
// Convenient templatized version of SubmitBuffer() where |size| is deduced to
|
||||
// be the size of the type of |*data|.
|
||||
template <typename T>
|
||||
- bool SubmitBuffer(VABufferType va_buffer_type,
|
||||
- const T* data) WARN_UNUSED_RESULT {
|
||||
+ bool WARN_UNUSED_RESULT SubmitBuffer(VABufferType va_buffer_type,
|
||||
+ const T* data) {
|
||||
return SubmitBuffer(va_buffer_type, sizeof(T), data);
|
||||
}
|
||||
// Batch-version of SubmitBuffer(), where the lock for accessing libva is
|
||||
--
|
||||
2.26.2
|
||||
|
@ -0,0 +1,139 @@
|
||||
diff --git a/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc b/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc
|
||||
index 19f9aab5b..8073637e9 100644
|
||||
--- a/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc
|
||||
+++ b/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc
|
||||
@@ -35,6 +35,7 @@
|
||||
|
||||
#include "absl/synchronization/internal/graphcycles.h"
|
||||
|
||||
+#include <limits>
|
||||
#include <algorithm>
|
||||
#include <array>
|
||||
#include "absl/base/internal/hide_ptr.h"
|
||||
diff --git a/third_party/angle/src/libANGLE/HandleAllocator.cpp b/third_party/angle/src/libANGLE/HandleAllocator.cpp
|
||||
index 013f1dfb2..3ce63c192 100644
|
||||
--- a/third_party/angle/src/libANGLE/HandleAllocator.cpp
|
||||
+++ b/third_party/angle/src/libANGLE/HandleAllocator.cpp
|
||||
@@ -9,6 +9,7 @@
|
||||
|
||||
#include "libANGLE/HandleAllocator.h"
|
||||
|
||||
+#include <limits>
|
||||
#include <algorithm>
|
||||
#include <functional>
|
||||
|
||||
diff --git a/third_party/perfetto/src/trace_processor/containers/string_pool.cc b/third_party/perfetto/src/trace_processor/containers/string_pool.cc
|
||||
index fd651958f..1e8d0606c 100644
|
||||
--- a/third_party/perfetto/src/trace_processor/containers/string_pool.cc
|
||||
+++ b/third_party/perfetto/src/trace_processor/containers/string_pool.cc
|
||||
@@ -14,9 +14,9 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
+#include <limits>
|
||||
#include "src/trace_processor/containers/string_pool.h"
|
||||
|
||||
-#include <limits>
|
||||
|
||||
#include "perfetto/base/logging.h"
|
||||
#include "perfetto/ext/base/utils.h"
|
||||
diff --git a/third_party/perfetto/src/trace_processor/db/column.cc b/third_party/perfetto/src/trace_processor/db/column.cc
|
||||
index 00496b335..0dccfeb8a 100644
|
||||
--- a/third_party/perfetto/src/trace_processor/db/column.cc
|
||||
+++ b/third_party/perfetto/src/trace_processor/db/column.cc
|
||||
@@ -14,6 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
+#include <limits>
|
||||
#include "src/trace_processor/db/column.h"
|
||||
|
||||
#include "src/trace_processor/db/compare.h"
|
||||
diff --git a/third_party/perfetto/src/trace_processor/types/variadic.cc b/third_party/perfetto/src/trace_processor/types/variadic.cc
|
||||
index 837bfeba9..cdd56817d 100644
|
||||
--- a/third_party/perfetto/src/trace_processor/types/variadic.cc
|
||||
+++ b/third_party/perfetto/src/trace_processor/types/variadic.cc
|
||||
@@ -14,6 +14,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
+#include <limits>
|
||||
#include "src/trace_processor/types/variadic.h"
|
||||
|
||||
namespace perfetto {
|
||||
diff --git a/ui/accessibility/platform/ax_platform_atk_hyperlink.cc b/ui/accessibility/platform/ax_platform_atk_hyperlink.cc
|
||||
index be91def6b..73f202356 100644
|
||||
--- a/ui/accessibility/platform/ax_platform_atk_hyperlink.cc
|
||||
+++ b/ui/accessibility/platform/ax_platform_atk_hyperlink.cc
|
||||
@@ -245,7 +245,7 @@ static void AXPlatformAtkHyperlinkInit(AXPlatformAtkHyperlink* self, gpointer) {
|
||||
}
|
||||
|
||||
GType ax_platform_atk_hyperlink_get_type() {
|
||||
- static volatile gsize type_volatile = 0;
|
||||
+ static gsize type_volatile = 0;
|
||||
|
||||
AXPlatformNodeAuraLinux::EnsureGTypeInit();
|
||||
|
||||
diff --git a/ui/accessibility/platform/ax_platform_node_auralinux.cc b/ui/accessibility/platform/ax_platform_node_auralinux.cc
|
||||
index 04125c6fd..6c64e5d8e 100644
|
||||
--- a/ui/accessibility/platform/ax_platform_node_auralinux.cc
|
||||
+++ b/ui/accessibility/platform/ax_platform_node_auralinux.cc
|
||||
@@ -2274,7 +2274,7 @@ void ClassInit(gpointer class_pointer, gpointer /* class_data */) {
|
||||
GType GetType() {
|
||||
AXPlatformNodeAuraLinux::EnsureGTypeInit();
|
||||
|
||||
- static volatile gsize type_volatile = 0;
|
||||
+ static gsize type_volatile = 0;
|
||||
if (g_once_init_enter(&type_volatile)) {
|
||||
static const GTypeInfo type_info = {
|
||||
sizeof(AXPlatformNodeAuraLinuxClass), // class_size
|
||||
diff --git a/ui/gtk/gtk_key_bindings_handler.cc b/ui/gtk/gtk_key_bindings_handler.cc
|
||||
index c663a2074..38a342484 100644
|
||||
--- a/ui/gtk/gtk_key_bindings_handler.cc
|
||||
+++ b/ui/gtk/gtk_key_bindings_handler.cc
|
||||
@@ -141,7 +141,7 @@ void GtkKeyBindingsHandler::HandlerClassInit(HandlerClass* klass) {
|
||||
}
|
||||
|
||||
GType GtkKeyBindingsHandler::HandlerGetType() {
|
||||
- static volatile gsize type_id_volatile = 0;
|
||||
+ static gsize type_id_volatile = 0;
|
||||
if (g_once_init_enter(&type_id_volatile)) {
|
||||
GType type_id = g_type_register_static_simple(
|
||||
GTK_TYPE_TEXT_VIEW, g_intern_static_string("GtkKeyBindingsHandler"),
|
||||
diff --git a/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc b/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc
|
||||
index c0b5a805b..e6f921926 100644
|
||||
--- a/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc
|
||||
+++ b/chrome/browser/ui/bookmarks/bookmark_tab_helper.cc
|
||||
@@ -2,6 +2,7 @@
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
+#include <cstddef>
|
||||
#include "chrome/browser/ui/bookmarks/bookmark_tab_helper.h"
|
||||
|
||||
#include "base/observer_list.h"
|
||||
diff --git a/components/bookmarks/browser/bookmark_expanded_state_tracker.cc b/components/bookmarks/browser/bookmark_expanded_state_tracker.cc
|
||||
index 4ad2afa1f..5c4596e12 100644
|
||||
--- a/components/bookmarks/browser/bookmark_expanded_state_tracker.cc
|
||||
+++ b/components/bookmarks/browser/bookmark_expanded_state_tracker.cc
|
||||
@@ -2,6 +2,7 @@
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
+#include <cstddef>
|
||||
#include "components/bookmarks/browser/bookmark_expanded_state_tracker.h"
|
||||
|
||||
#include <stdint.h>
|
||||
diff --git a/components/bookmarks/browser/base_bookmark_model_observer.cc b/components/bookmarks/browser/base_bookmark_model_observer.cc
|
||||
index 657a3c96b..ad641a082 100644
|
||||
--- a/components/bookmarks/browser/base_bookmark_model_observer.cc
|
||||
+++ b/components/bookmarks/browser/base_bookmark_model_observer.cc
|
||||
@@ -2,6 +2,8 @@
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
+#include <cstddef>
|
||||
+
|
||||
#include "components/bookmarks/browser/base_bookmark_model_observer.h"
|
||||
|
||||
namespace bookmarks {
|
Loading…
Reference in new issue