summaryrefslogtreecommitdiff
path: root/www-client/chromium/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2021-10-20 10:22:14 +0100
committerV3n3RiX <venerix@koprulu.sector>2021-10-20 10:22:14 +0100
commit46eedbedafdb0040c37884982d4c775ce277fb7b (patch)
treedb33a91259730be84999e13a8d8168c799f50ac0 /www-client/chromium/files
parente23a08d0c97a0cc415aaa165da840b056f93c997 (diff)
gentoo resync : 20.10.2021
Diffstat (limited to 'www-client/chromium/files')
-rw-r--r--www-client/chromium/files/chromium-95-harfbuzz-3.patch31
-rw-r--r--www-client/chromium/files/chromium-96-EnumTable-crash.patch76
2 files changed, 107 insertions, 0 deletions
diff --git a/www-client/chromium/files/chromium-95-harfbuzz-3.patch b/www-client/chromium/files/chromium-95-harfbuzz-3.patch
new file mode 100644
index 000000000000..33fe9556aaf3
--- /dev/null
+++ b/www-client/chromium/files/chromium-95-harfbuzz-3.patch
@@ -0,0 +1,31 @@
+From 9e00e702633c47c590a869bc66b5c2ceec09da50 Mon Sep 17 00:00:00 2001
+From: Dominik Röttsches <drott@chromium.org>
+Date: Tue, 28 Sep 2021 15:31:50 +0000
+Subject: [PATCH] Roll src/third_party/harfbuzz-ng/src/ 6602cbb70..a52c6df38 (80 commits)
+
+Fixed: 1252284
+Change-Id: Ie2ff99da5e41ca97b8881e1bd3e158881f4d5a8e
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3190252
+Commit-Queue: Dominik Röttsches <drott@chromium.org>
+Commit-Queue: Calder Kitagawa <ckitagawa@chromium.org>
+Auto-Submit: Dominik Röttsches <drott@chromium.org>
+Reviewed-by: Calder Kitagawa <ckitagawa@chromium.org>
+Reviewed-by: Anders Hartvoll Ruud <andruud@chromium.org>
+Cr-Commit-Position: refs/heads/main@{#925776}
+
+(only components/paint_preview/common/subset_font.cc)
+---
+
+diff --git a/components/paint_preview/common/subset_font.cc b/components/paint_preview/common/subset_font.cc
+index 45daea7b1..43a448e 100644
+--- a/components/paint_preview/common/subset_font.cc
++++ b/components/paint_preview/common/subset_font.cc
+@@ -79,7 +79,7 @@
+ // Retain all variation information for OpenType variation fonts. See:
+ // https://docs.microsoft.com/en-us/typography/opentype/spec/otvaroverview
+ hb_set_t* skip_subset =
+- hb_subset_input_no_subset_tables_set(input.get()); // Owned by |input|.
++ hb_subset_input_set(input.get(), HB_SUBSET_SETS_NO_SUBSET_TABLE_TAG);
+ hb_set_add(skip_subset, HB_TAG('a', 'v', 'a', 'r'));
+ hb_set_add(skip_subset, HB_TAG('c', 'v', 'a', 'r'));
+ hb_set_add(skip_subset, HB_TAG('f', 'v', 'a', 'r'));
diff --git a/www-client/chromium/files/chromium-96-EnumTable-crash.patch b/www-client/chromium/files/chromium-96-EnumTable-crash.patch
new file mode 100644
index 000000000000..9736739c8224
--- /dev/null
+++ b/www-client/chromium/files/chromium-96-EnumTable-crash.patch
@@ -0,0 +1,76 @@
+diff --git a/components/cast_channel/enum_table.h b/components/cast_channel/enum_table.h
+index aad9e08..2f3fcad 100644
+--- a/components/cast_channel/enum_table.h
++++ b/components/cast_channel/enum_table.h
+@@ -8,6 +8,7 @@
+ #include <cstdint>
+ #include <cstring>
+ #include <ostream>
++#include <vector>
+
+ #include "base/check_op.h"
+ #include "base/macros.h"
+@@ -188,7 +189,6 @@ class
+ inline constexpr GenericEnumTableEntry(int32_t value);
+ inline constexpr GenericEnumTableEntry(int32_t value, base::StringPiece str);
+
+- GenericEnumTableEntry(const GenericEnumTableEntry&) = delete;
+ GenericEnumTableEntry& operator=(const GenericEnumTableEntry&) = delete;
+
+ private:
+@@ -254,7 +254,6 @@ class EnumTable {
+ constexpr Entry(E value, base::StringPiece str)
+ : GenericEnumTableEntry(static_cast<int32_t>(value), str) {}
+
+- Entry(const Entry&) = delete;
+ Entry& operator=(const Entry&) = delete;
+ };
+
+@@ -313,15 +312,14 @@ class EnumTable {
+ if (is_sorted_) {
+ const std::size_t index = static_cast<std::size_t>(value);
+ if (ANALYZER_ASSUME_TRUE(index < data_.size())) {
+- const auto& entry = data_.begin()[index];
++ const auto& entry = data_[index];
+ if (ANALYZER_ASSUME_TRUE(entry.has_str()))
+ return entry.str();
+ }
+ return absl::nullopt;
+ }
+ return GenericEnumTableEntry::FindByValue(
+- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
+- data_.size(), static_cast<int32_t>(value));
++ &data_[0], data_.size(), static_cast<int32_t>(value));
+ }
+
+ // This overload of GetString is designed for cases where the argument is a
+@@ -349,8 +347,7 @@ class EnumTable {
+ // enum value directly.
+ absl::optional<E> GetEnum(base::StringPiece str) const {
+ auto* entry = GenericEnumTableEntry::FindByString(
+- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
+- data_.size(), str);
++ &data_[0], data_.size(), str);
+ return entry ? static_cast<E>(entry->value) : absl::optional<E>();
+ }
+
+@@ -365,7 +362,7 @@ class EnumTable {
+ // Align the data on a cache line boundary.
+ alignas(64)
+ #endif
+- std::initializer_list<Entry> data_;
++ const std::vector<Entry> data_;
+ bool is_sorted_;
+
+ constexpr EnumTable(std::initializer_list<Entry> data, bool is_sorted)
+@@ -377,8 +374,8 @@ class EnumTable {
+
+ for (std::size_t i = 0; i < data.size(); i++) {
+ for (std::size_t j = i + 1; j < data.size(); j++) {
+- const Entry& ei = data.begin()[i];
+- const Entry& ej = data.begin()[j];
++ const Entry& ei = data[i];
++ const Entry& ej = data[j];
+ DCHECK(ei.value != ej.value)
+ << "Found duplicate enum values at indices " << i << " and " << j;
+ DCHECK(!(ei.has_str() && ej.has_str() && ei.str() == ej.str()))