summaryrefslogtreecommitdiff
path: root/www-client/chromium/files/chromium-125-revert-8a3bec6.patch
diff options
context:
space:
mode:
Diffstat (limited to 'www-client/chromium/files/chromium-125-revert-8a3bec6.patch')
-rw-r--r--www-client/chromium/files/chromium-125-revert-8a3bec6.patch450
1 files changed, 0 insertions, 450 deletions
diff --git a/www-client/chromium/files/chromium-125-revert-8a3bec6.patch b/www-client/chromium/files/chromium-125-revert-8a3bec6.patch
deleted file mode 100644
index 0f19d49..0000000
--- a/www-client/chromium/files/chromium-125-revert-8a3bec6.patch
+++ /dev/null
@@ -1,450 +0,0 @@
-diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/renderer/platform/BUILD.gn
-index 2c079c06c5..34a844659b 100644
---- a/third_party/blink/renderer/platform/BUILD.gn
-+++ b/third_party/blink/renderer/platform/BUILD.gn
-@@ -118,10 +118,7 @@ blink_python_runner("color_data") {
-
- compiled_action("character_data") {
- tool = ":character_data_generator"
-- outputs = [
-- "$blink_platform_output_dir/character_property_data.cc",
-- "$blink_platform_output_dir/text/break_iterator_data_inline_header.h",
-- ]
-+ outputs = [ "$blink_platform_output_dir/character_property_data.cc" ]
- args = rebase_path(outputs, root_build_dir)
- }
-
-diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
-index 28d34020f7..45942f4e89 100644
---- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
-+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
-@@ -509,11 +509,6 @@
- public: true,
- status: "experimental",
- },
-- {
-- // crbug.com/41485013
-- name: "BreakIteratorDataGenerator",
-- status: "stable",
-- },
- {
- name: "BrowserVerifiedUserActivationKeyboard",
- base_feature: "none",
-diff --git a/third_party/blink/renderer/platform/text/character_property_data_generator.cc b/third_party/blink/renderer/platform/text/character_property_data_generator.cc
-index 70101dbf76..27e6852647 100644
---- a/third_party/blink/renderer/platform/text/character_property_data_generator.cc
-+++ b/third_party/blink/renderer/platform/text/character_property_data_generator.cc
-@@ -5,19 +5,13 @@
- #include "third_party/blink/renderer/platform/text/character_property_data.h"
-
- #include <stdio.h>
--#include <unicode/brkiter.h>
--#include <unicode/locid.h>
- #include <unicode/ucptrie.h>
--#include <unicode/udata.h>
--#include <unicode/ulocdata.h>
- #include <unicode/umutablecptrie.h>
- #include <unicode/uniset.h>
- #include <unicode/unistr.h>
-
- #include <cassert>
- #include <cstring>
--#include <filesystem>
--#include <fstream>
- #include <iterator>
- #include <memory>
-
-@@ -31,36 +25,6 @@
- namespace blink {
- namespace {
-
--#define CHECK_U_ERROR(error, name) \
-- CHECK(U_SUCCESS(error)) << name << ": (" << error << ")" << u_errorName(error)
--
--//
--// Load the ICU data file and set it to the ICU.
--//
--void InitializeIcu(const char* exec_path) {
-- // ICU can't load the data file by itself because ICU tries to load the
-- // versioned data file (e.g., "icudt73l.dat"), while the Chromium build system
-- // creates the unversioned data file (e.g., "icudtl.dat").
-- std::filesystem::path path{exec_path};
-- path = path.parent_path() / "icudt" U_ICUDATA_TYPE_LETTER ".dat";
--
-- std::ifstream data_ifstream(path, std::ios_base::binary);
-- CHECK(data_ifstream.is_open());
-- static std::vector<uint8_t> icu_data;
-- CHECK(icu_data.empty());
-- std::copy(std::istreambuf_iterator<char>(data_ifstream),
-- std::istreambuf_iterator<char>(), std::back_inserter(icu_data));
-- UErrorCode error = U_ZERO_ERROR;
-- udata_setCommonData(icu_data.data(), &error);
-- CHECK_U_ERROR(error, "udata_setCommonData");
--
-- // Check ICU functions that need the data resources are working.
-- // https://unicode-org.github.io/icu/userguide/icu/design.html#icu4c-initialization-and-termination
-- UVersionInfo version;
-- ulocdata_getCLDRVersion(version, &error);
-- CHECK_U_ERROR(error, "ulocdata_getCLDRVersion");
--}
--
- class CharacterPropertyValues {
- public:
- constexpr static UChar32 kMaxCodepoint = 0x10FFFF;
-@@ -255,201 +219,18 @@ static void GenerateCharacterPropertyData(FILE* fp) {
- GenerateUTrieSerialized(fp, serialized_size, serialized);
- }
-
--//
--// Generate a line break pair table in `break_iterator_data_inline_header.h`.
--//
--// See [UAX14](https://unicode.org/reports/tr14/).
--//
--class LineBreakData {
-- public:
-- LineBreakData() = default;
--
-- static void Generate(FILE* fp) {
-- LineBreakData data;
-- data.FillFromIcu();
-- data.FillAscii();
-- data.Print(fp);
-- }
--
-- private:
-- // Fill the pair table from the ICU BreakIterator.
-- void FillFromIcu() {
-- UErrorCode status = U_ZERO_ERROR;
-- const icu::Locale locale("en");
-- icu::BreakIterator* break_iterator =
-- icu::BreakIterator::createLineInstance(locale, status);
-- CHECK_U_ERROR(status, "createLineInstance");
--
-- for (UChar ch = kMinChar; ch <= kMaxChar; ++ch) {
-- const icu::UnicodeString ch_str(ch);
-- for (UChar ch_next = kMinChar; ch_next <= kMaxChar; ++ch_next) {
-- const icu::UnicodeString ch_next_str(ch_next);
-- const icu::UnicodeString str = ch_str + ch_next_str;
-- break_iterator->setText(str);
-- SetPairValue(ch, ch_next, break_iterator->isBoundary(1));
-- }
-- }
-- }
--
-- // Line breaking table for printable ASCII characters. Line breaking
-- // opportunities in this table are as below:
-- // - before opening punctuations such as '(', '<', '[', '{' after certain
-- // characters (compatible with Firefox 3.6);
-- // - after '-' and '?' (backward-compatible, and compatible with Internet
-- // Explorer).
-- // Please refer to <https://bugs.webkit.org/show_bug.cgi?id=37698> for line
-- // breaking matrixes of different browsers and the ICU standard.
-- void FillAscii() {
--#define ALL_CHAR '!', 0x7F
-- SetPairValue(ALL_CHAR, ALL_CHAR, false);
-- SetPairValue(ALL_CHAR, '(', '(', true);
-- SetPairValue(ALL_CHAR, '<', '<', true);
-- SetPairValue(ALL_CHAR, '[', '[', true);
-- SetPairValue(ALL_CHAR, '{', '{', true);
-- SetPairValue('-', '-', ALL_CHAR, true);
-- SetPairValue('?', '?', ALL_CHAR, true);
-- SetPairValue('-', '-', '$', '$', false);
-- SetPairValue(ALL_CHAR, '!', '!', false);
-- SetPairValue('?', '?', '"', '"', false);
-- SetPairValue('?', '?', '\'', '\'', false);
-- SetPairValue(ALL_CHAR, ')', ')', false);
-- SetPairValue(ALL_CHAR, ',', ',', false);
-- SetPairValue(ALL_CHAR, '.', '.', false);
-- SetPairValue(ALL_CHAR, '/', '/', false);
-- // Note: Between '-' and '[0-9]' is hard-coded in `ShouldBreakFast()`.
-- SetPairValue('-', '-', '0', '9', false);
-- SetPairValue(ALL_CHAR, ':', ':', false);
-- SetPairValue(ALL_CHAR, ';', ';', false);
-- SetPairValue(ALL_CHAR, '?', '?', false);
-- SetPairValue(ALL_CHAR, ']', ']', false);
-- SetPairValue(ALL_CHAR, '}', '}', false);
-- SetPairValue('$', '$', ALL_CHAR, false);
-- SetPairValue('\'', '\'', ALL_CHAR, false);
-- SetPairValue('(', '(', ALL_CHAR, false);
-- SetPairValue('/', '/', ALL_CHAR, false);
-- SetPairValue('0', '9', ALL_CHAR, false);
-- SetPairValue('<', '<', ALL_CHAR, false);
-- SetPairValue('@', '@', ALL_CHAR, false);
-- SetPairValue('A', 'Z', ALL_CHAR, false);
-- SetPairValue('[', '[', ALL_CHAR, false);
-- SetPairValue('^', '`', ALL_CHAR, false);
-- SetPairValue('a', 'z', ALL_CHAR, false);
-- SetPairValue('{', '{', ALL_CHAR, false);
-- SetPairValue(0x7F, 0x7F, ALL_CHAR, false);
--#undef ALL_CHAR
-- }
--
-- // Print the C++ source code.
-- void Print(FILE* fp) {
-- // Print file headers.
-- fprintf(fp,
-- "#include <cstdint>\n"
-- "#include "
-- "\"third_party/blink/renderer/platform/wtf/text/wtf_uchar.h\"\n"
-- "\nnamespace {\n\n");
--
-- fprintf(fp, "constexpr UChar kFastLineBreakMinChar = 0x%02X;\n", kMinChar);
-- fprintf(fp, "constexpr UChar kFastLineBreakMaxChar = 0x%02X;\n", kMaxChar);
--
-- // Define macros.
-- fprintf(fp,
-- "\n#define B(a, b, c, d, e, f, g, h)"
-- " ((a) | ((b) << 1) | ((c) << 2) | ((d) << 3) |"
-- " ((e) << 4) | ((f) << 5) | ((g) << 6) | ((h) << 7))\n\n");
--
-- fprintf(fp, "const uint8_t kFastLineBreakTable[%d][%d] = {\n", kNumChars,
-- kNumCharsRoundUp8 / 8);
--
-- // Print the column comment.
-- fprintf(fp, " /*");
-- for (UChar ch = kMinChar; ch <= kMaxChar; ++ch) {
-- if (ch != kMinChar && (ch - kMinChar) % 8 == 0) {
-- fprintf(fp, " ");
-- }
-- fprintf(fp, ch < 0x7F ? " %c" : "%02X", ch);
-- }
-- fprintf(fp, " */\n");
--
-- // Print the data array.
-- for (int y = 0; y < kNumChars; ++y) {
-- const UChar ch = y + kMinChar;
-- fprintf(fp, "/* %02X %c */ {B(", ch, ch < 0x7F ? ch : ' ');
-- const char* prefix = "";
-- for (int x = 0; x < kNumCharsRoundUp8; ++x) {
-- fprintf(fp, "%s%d", prefix, pair_[y][x]);
-- prefix = (x % 8 == 7) ? "),B(" : ",";
-- }
-- fprintf(fp, ")},\n");
-- }
-- fprintf(fp,
-- "};\n\n"
-- "#undef B\n\n"
-- "template <typename T>\n"
-- "inline uint8_t GetFastLineBreak(T ch1, T ch2) {\n"
-- " const T i2 = ch2 - kFastLineBreakMinChar;\n"
-- " return kFastLineBreakTable[ch1 - kFastLineBreakMinChar]"
-- "[i2 / 8] & (1 << (i2 %% 8));\n"
-- "}\n\n"
-- "} // namespace\n");
-- }
--
-- void SetPairValue(UChar ch1_min,
-- UChar ch1_max,
-- UChar ch2_min,
-- UChar ch2_max,
-- bool value) {
-- for (UChar ch1 = ch1_min; ch1 <= ch1_max; ++ch1) {
-- for (UChar ch2 = ch2_min; ch2 <= ch2_max; ++ch2) {
-- SetPairValue(ch1, ch2, value);
-- }
-- }
-- }
--
-- // Set the breakability between `ch1` and `ch2`.
-- void SetPairValue(UChar ch1, UChar ch2, bool value) {
-- CHECK_GE(ch1, kMinChar);
-- CHECK_LE(ch1, kMaxChar);
-- CHECK_GE(ch2, kMinChar);
-- CHECK_LE(ch2, kMaxChar);
-- pair_[ch1 - kMinChar][ch2 - kMinChar] = value;
-- }
--
-- constexpr static UChar kMinChar = '!';
-- constexpr static UChar kMaxChar = 0xFF;
-- constexpr static int kNumChars = kMaxChar - kMinChar + 1;
-- constexpr static int kNumCharsRoundUp8 = (kNumChars + 7) / 8 * 8;
-- bool pair_[kNumChars][kNumCharsRoundUp8]{};
--};
--
--void InvokeGenerator(int index,
-- int argc,
-- char** argv,
-- void (*generator)(FILE*)) {
-- if (index >= argc) {
-- return;
-- }
-- const char* path = argv[index];
-- if (!*path) {
-- return;
-- }
--
-- if (strcmp(path, "-") == 0) {
-- (*generator)(stdout);
-- return;
-- }
--
-- FILE* fp = fopen(path, "wb");
-- (*generator)(fp);
-- fclose(fp);
--}
--
- } // namespace
- } // namespace blink
-
- int main(int argc, char** argv) {
-- blink::InitializeIcu(argv[0]);
-- blink::InvokeGenerator(1, argc, argv, blink::GenerateCharacterPropertyData);
-- blink::InvokeGenerator(2, argc, argv, blink::LineBreakData::Generate);
-+ // Write the serialized array to the source file.
-+ if (argc <= 1) {
-+ blink::GenerateCharacterPropertyData(stdout);
-+ } else {
-+ FILE* fp = fopen(argv[1], "wb");
-+ blink::GenerateCharacterPropertyData(fp);
-+ fclose(fp);
-+ }
-
- return 0;
- }
-diff --git a/third_party/blink/renderer/platform/text/text_break_iterator.cc b/third_party/blink/renderer/platform/text/text_break_iterator.cc
-index 650eb760b2..14de47d9fe 100644
---- a/third_party/blink/renderer/platform/text/text_break_iterator.cc
-+++ b/third_party/blink/renderer/platform/text/text_break_iterator.cc
-@@ -26,8 +26,6 @@
- #include <unicode/uchar.h>
- #include <unicode/uvernum.h>
-
--#include "third_party/blink/renderer/platform/runtime_enabled_features.h"
--#include "third_party/blink/renderer/platform/text/break_iterator_data_inline_header.h"
- #include "third_party/blink/renderer/platform/wtf/std_lib_extras.h"
- #include "third_party/blink/renderer/platform/wtf/text/ascii_ctype.h"
- #include "third_party/blink/renderer/platform/wtf/text/character_names.h"
-@@ -113,9 +111,6 @@ static const UChar kAsciiLineBreakTableLastChar = 127;
-
- #define F 0xFF
-
--// Check if the generated table match the `kAsciiLineBreakTable` table.
--#define CHECK_ASCII_LINE_BRAEK_TABLE 0
--
- // Line breaking table for printable ASCII characters. Line breaking
- // opportunities in this table are as below:
- // - before opening punctuations such as '(', '<', '[', '{' after certain
-@@ -166,24 +161,6 @@ static const unsigned char kAsciiLineBreakTable[][(kAsciiLineBreakTableLastChar
- };
- // clang-format on
-
--#if CHECK_ASCII_LINE_BRAEK_TABLE
--void CheckAsciiLineBreakTable() {
-- for (UChar ch2 = kAsciiLineBreakTableFirstChar;
-- ch2 <= kAsciiLineBreakTableLastChar; ++ch2) {
-- for (UChar ch1 = kAsciiLineBreakTableFirstChar;
-- ch1 <= kAsciiLineBreakTableLastChar; ++ch1) {
-- const UChar i2 = ch2 - kAsciiLineBreakTableFirstChar;
-- const bool ascii =
-- kAsciiLineBreakTable[ch1 - kAsciiLineBreakTableFirstChar][i2 / 8] &
-- (1 << (i2 % 8));
-- const bool fast = GetFastLineBreak(ch1, ch2);
-- CHECK_EQ(ascii, fast)
-- << String::Format("%02X/%02X (%c/%c)", ch1, ch2, ch1, ch2);
-- }
-- }
--}
--#endif // CHECK_ASCII_LINE_BRAEK_TABLE
--
- #define BA_LB_COUNT U_LB_COUNT
- // Line breaking table for CSS word-break: break-all. This table differs from
- // asciiLineBreakTable in:
-@@ -298,13 +275,7 @@ static inline bool ShouldKeepAfterKeepAll(UChar last_ch,
- }
-
- inline bool NeedsLineBreakIterator(UChar ch) {
-- if (UNLIKELY(!RuntimeEnabledFeatures::BreakIteratorDataGeneratorEnabled())) {
-- return ch > kAsciiLineBreakTableLastChar && ch != kNoBreakSpaceCharacter;
-- }
-- static_assert(kFastLineBreakMaxChar >= kAsciiLineBreakTableLastChar);
-- static_assert(kNoBreakSpaceCharacter <= kFastLineBreakMaxChar,
-- "Include NBSP for the performance.");
-- return ch > kFastLineBreakMaxChar;
-+ return ch > kAsciiLineBreakTableLastChar && ch != kNoBreakSpaceCharacter;
- }
-
- template <typename CharacterType>
-@@ -349,61 +320,31 @@ struct LazyLineBreakIterator::Context {
- last = current;
- }
-
-- bool ShouldBreakFast(bool disable_soft_hyphen) const {
--#if CHECK_ASCII_LINE_BRAEK_TABLE
-- DEFINE_STATIC_LOCAL(bool, is_check_done, (false));
-- if (!is_check_done) {
-- is_check_done = true;
-- CheckAsciiLineBreakTable();
-- LOG(INFO) << "CheckAsciiLineBreakTable() completed.";
-- }
--#endif // CHECK_ASCII_LINE_BRAEK_TABLE
--
-+ bool ShouldBreakFast() const {
- const UChar last_ch = last.ch;
- const UChar ch = current.ch;
-- static_assert(kFastLineBreakMinChar == kAsciiLineBreakTableFirstChar);
-- if (UNLIKELY(last_ch < kFastLineBreakMinChar ||
-- ch < kFastLineBreakMinChar)) {
-+ if (UNLIKELY(last_ch < kAsciiLineBreakTableFirstChar ||
-+ ch < kAsciiLineBreakTableFirstChar)) {
- return false;
- }
-
- // Don't allow line breaking between '-' and a digit if the '-' may mean a
- // minus sign in the context, while allow breaking in 'ABCD-1234' and
- // '1234-5678' which may be in long URLs.
-- static_assert('-' >= kFastLineBreakMinChar);
-+ static_assert('-' >= kAsciiLineBreakTableFirstChar);
- if (last_ch == '-' && IsASCIIDigit(ch)) {
- return IsASCIIAlphanumeric(last_last_ch);
- }
-
-- if (UNLIKELY(
-- !RuntimeEnabledFeatures::BreakIteratorDataGeneratorEnabled())) {
-- // If both `last_ch` and `ch` are ASCII characters, use a lookup table for
-- // enhanced speed and for compatibility with other browsers (see comments
-- // for asciiLineBreakTable for details).
-- if (last_ch <= kAsciiLineBreakTableLastChar &&
-- ch <= kAsciiLineBreakTableLastChar) {
-- const unsigned char* table_row =
-- kAsciiLineBreakTable[last_ch - kAsciiLineBreakTableFirstChar];
-- int ch_index = ch - kAsciiLineBreakTableFirstChar;
-- return table_row[ch_index / 8] & (1 << (ch_index % 8));
-- }
--
-- // Otherwise defer to the Unicode algorithm by returning false.
-- return false;
-- }
--
-- // If both characters are in the fast line break table, use it for enhanced
-- // speed. For ASCII characters, it is also for compatibility. The table is
-- // generated at the build time, see the `LineBreakData` class.
-- if (last_ch <= kFastLineBreakMaxChar && ch <= kFastLineBreakMaxChar) {
-- if (!GetFastLineBreak(last_ch, ch)) {
-- return false;
-- }
-- static_assert(kSoftHyphenCharacter <= kFastLineBreakMaxChar);
-- if (UNLIKELY(disable_soft_hyphen && last_ch == kSoftHyphenCharacter)) {
-- return false;
-- }
-- return true;
-+ // If both `last_ch` and `ch` are ASCII characters, use a lookup table for
-+ // enhanced speed and for compatibility with other browsers (see comments
-+ // for asciiLineBreakTable for details).
-+ if (last_ch <= kAsciiLineBreakTableLastChar &&
-+ ch <= kAsciiLineBreakTableLastChar) {
-+ const unsigned char* table_row =
-+ kAsciiLineBreakTable[last_ch - kAsciiLineBreakTableFirstChar];
-+ int ch_index = ch - kAsciiLineBreakTableFirstChar;
-+ return table_row[ch_index / 8] & (1 << (ch_index % 8));
- }
-
- // Otherwise defer to the Unicode algorithm by returning false.
-@@ -452,7 +393,7 @@ inline int LazyLineBreakIterator::NextBreakablePosition(
- break;
- }
-
-- if (context.ShouldBreakFast(disable_soft_hyphen_)) {
-+ if (context.ShouldBreakFast()) {
- return i;
- }
-