Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package nodejs-electron for openSUSE:Factory checked in at 2023-01-18 13:12:30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/nodejs-electron (Old) and /work/SRC/openSUSE:Factory/.nodejs-electron.new.32243 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "nodejs-electron" Wed Jan 18 13:12:30 2023 rev:50 rq:1059260 version:22.0.2 Changes: -------- --- /work/SRC/openSUSE:Factory/nodejs-electron/nodejs-electron.changes 2023-01-14 00:03:18.093740195 +0100 +++ /work/SRC/openSUSE:Factory/.nodejs-electron.new.32243/nodejs-electron.changes 2023-01-18 13:13:06.125406325 +0100 @@ -1,0 +2,40 @@ +Wed Jan 18 05:27:34 UTC 2023 - Bruno Pitrus <brunopit...@hotmail.com> +- Update to 22.0.2 + * ABI break: NODE_MODULE_VERSION is now 110. Native modules may need recompiling + * Chromium to 108.0.5359.179 + * Node v16.17.1 + * V8 v10.8 + * Added WebContents input-event event. + * Deprecated BrowserWindow scroll-touch-* events. + * The deprecated new-window event has been removed. + * Added contextBridge.exposeInIsolatedWorld(worldId, key, api) to expose + an API to an isolatedWorld within a renderer from a preload script. + * Added webContents.close() method. + * Added new UtilityProcess API to launch chromium child process with node integration. + * Added new WebContents event content-bounds-updated. + * Added support for navigator.mediaDevices.getDisplayMedia via a new + session handler, ses.setDisplayMediaRequestHandler. + * Added support for serialPort.forget() as well as a new event + serial-port-revoked emitted when a given origin is revoked. +- Drop patches applied upstream + * argument_spec-missing-isnan-isinf.patch + * chromium-103.0.5060.53-python3-do-not-use-deprecated-mode-U.patch + * content_language_parser-missing-string.patch + * gtk_ui_platform_stub-incomplete-type-LinuxInputMethodContext.patch + * node-system-libs.patch + * pending_beacon_dispatcher-virtual-functions-cannot-be-constexpr.patch + * std_lib_extras-missing-intptr_t.patch + * system-abseil-missing-shims.patch +- Re-add electron_serial_delegate-ambiguous-Observer.patch due to upstream reintroducing the invalid code +- Add patches to fix build errors + * chromium-108-abseil-shims.patch + * crashpad-elf_image_reader-ProgramHeaderTableSpecific-expected-unqualified-id.patch + * document_loader-private-DecodedBodyData.patch + * first_party_set_parser-IssueWithMetadata-no-known-conversion.patch + * print_dialog_gtk-no-kEnableOopPrintDriversJobPrint.patch + * swiftshader-LLVMJIT-AddressSanitizerPass-dead-code-remove.patch +- Conditionally reverse upstream changes to fix build with old harfbuzz + * harfbuzz-replace-chromium-scoped-type.patch +- Switch to bundled libjxl on Fedora 36 due to system version being too old + +------------------------------------------------------------------- Old: ---- argument_spec-missing-isnan-isinf.patch chromium-103.0.5060.53-python3-do-not-use-deprecated-mode-U.patch content_language_parser-missing-string.patch electron-21.3.4.tar.zst gtk_ui_platform_stub-incomplete-type-LinuxInputMethodContext.patch node-system-libs.patch pending_beacon_dispatcher-virtual-functions-cannot-be-constexpr.patch std_lib_extras-missing-intptr_t.patch system-abseil-missing-shims.patch New: ---- chromium-108-abseil-shims.patch crashpad-elf_image_reader-ProgramHeaderTableSpecific-expected-unqualified-id.patch document_loader-private-DecodedBodyData.patch electron-22.0.2.tar.zst electron_serial_delegate-ambiguous-Observer.patch first_party_set_parser-IssueWithMetadata-no-known-conversion.patch harfbuzz-replace-chromium-scoped-type.patch print_dialog_gtk-no-kEnableOopPrintDriversJobPrint.patch swiftshader-LLVMJIT-AddressSanitizerPass-dead-code-remove.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ nodejs-electron.spec ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:13.465447064 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:13.473447107 +0100 @@ -23,7 +23,7 @@ %define mod_name electron # https://github.com/nodejs/node/blob/main/doc/abi_version_registry.json -%define abi_version 109 +%define abi_version 110 # Do not provide libEGL.so, etc⦠%define __provides_exclude ^lib.*\\.so.*$ @@ -103,29 +103,23 @@ %endif -%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150400 || 0%{?fedora} -%bcond_without system_harfbuzz -%else -%bcond_with system_harfbuzz -%endif - - -%bcond_without system_freetype %bcond_without system_nghttp2 -%bcond_without system_double_conversion -%bcond_without system_woff2 %if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150600 || 0%{?fedora} >= 37 +%bcond_without harfbuzz_5 %bcond_without system_aom %bcond_without system_avif +%bcond_without system_jxl %bcond_without icu_71 %bcond_without ffmpeg_5 %bcond_without system_dav1d %bcond_without system_spirv %else +%bcond_with harfbuzz_5 %bcond_with system_aom %bcond_with system_avif +%bcond_with system_jxl %bcond_with icu_71 %bcond_with ffmpeg_5 %bcond_with system_dav1d @@ -140,11 +134,7 @@ %bcond_with system_nvctrl %endif -%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150600 || 0%{?fedora_version} -%bcond_without system_jxl -%else -%bcond_with system_jxl -%endif + @@ -203,7 +193,7 @@ Name: nodejs-electron -Version: 21.3.4 +Version: 22.0.2 Release: 0 Summary: Build cross platform desktop apps with JavaScript, HTML, and CSS License: AFL-2.0 AND Apache-2.0 AND blessing AND BSD-2-Clause AND BSD-3-Clause AND BSD-Protection AND BSD-Source-Code AND bzip2-1.0.6 AND IJG AND ISC AND LGPL-2.0-or-later AND LGPL-2.1-or-later AND MIT AND MIT-CMU AND MIT-open-group AND (MPL-1.1 OR GPL-2.0-or-later OR LGPL-2.1-or-later) AND MPL-2.0 AND OpenSSL AND SGI-B-2.0 AND SUSE-Public-Domain AND X11 @@ -225,6 +215,9 @@ # â¦and against icu-69 Source410: NumberFormat-icu71-incrementExact.patch Source411: intl-objects-icu71-UNUM_APPROXIMATELY_SIGN_FIELD.patch +# and against harfbuzz 4 +Source415: harfbuzz-replace-chromium-scoped-type.patch + #Reverse upstream changes to build against system libavif. #All of this patch is dead code, so it can be reversed unconditionally. @@ -268,7 +261,6 @@ Patch1040: system-jsoncpp.patch # https://sources.debian.org/patches/chromium/102.0.5005.115-1/system/zlib.patch/ Patch1041: system-zlib.patch -Patch1043: node-system-libs.patch Patch1044: replace_gn_files-system-libs.patch Patch1045: angle-system-xxhash.patch # https://svnweb.mageia.org/packages/cauldron/chromium-browser-stable/current/SOURCES/chromium-99-pdfium-system-libtiff-libpng.patch @@ -288,8 +280,8 @@ Patch1072: node-system-icu.patch Patch1073: system-nasm.patch Patch1074: no-zlib-headers.patch -Patch1075: system-abseil-missing-shims.patch Patch1076: crashpad-use-system-abseil.patch +Patch1077: chromium-108-abseil-shims.patch # PATCHES to fix interaction with third-party software Patch2004: chromium-gcc11.patch @@ -315,6 +307,7 @@ %else Source2033: node-upgrade-llhttp-to-8.patch %endif +Patch2034: swiftshader-LLVMJIT-AddressSanitizerPass-dead-code-remove.patch # PATCHES that should be submitted upstream verbatim or near-verbatim Patch3016: chromium-98-EnumTable-crash.patch @@ -327,16 +320,10 @@ Patch3056: async_shared_storage_database_impl-missing-absl-WrapUnique.patch # https://salsa.debian.org/chromium-team/chromium/-/blob/456851fc808b2a5b5c762921699994e957645917/debian/patches/upstream/nested-nested-nested-nested-nested-nested-regex-patterns.patch Patch3064: nested-nested-nested-nested-nested-nested-regex-patterns.patch -# Fedora patch to fix build with python3.11 -Patch3066: chromium-103.0.5060.53-python3-do-not-use-deprecated-mode-U.patch Patch3067: reproducible-config.gypi.patch -Patch3068: content_language_parser-missing-string.patch Patch3069: aggregatable_attribution_utils-do-not-assume-abseil-ABI.patch +Patch3071: electron_serial_delegate-ambiguous-Observer.patch Patch3072: attribution_response_parsing-do-not-assume-abseil-ABI.patch -Patch3074: pending_beacon_dispatcher-virtual-functions-cannot-be-constexpr.patch -Patch3075: std_lib_extras-missing-intptr_t.patch -Patch3076: gtk_ui_platform_stub-incomplete-type-LinuxInputMethodContext.patch -Patch3077: argument_spec-missing-isnan-isinf.patch Patch3078: select_file_dialog_linux_kde-Wodr.patch Patch3079: web_contents_impl-Wsubobject-linkage.patch Patch3080: compact_enc_det_generated_tables-Wnarrowing.patch @@ -356,6 +343,10 @@ Patch3095: CVE-2022-43548.patch Patch3096: remove-date-reproducible-builds.patch Patch3097: shim_headers-fix-ninja.patch +Patch3098: document_loader-private-DecodedBodyData.patch +Patch3099: crashpad-elf_image_reader-ProgramHeaderTableSpecific-expected-unqualified-id.patch +Patch3100: first_party_set_parser-IssueWithMetadata-no-known-conversion.patch +Patch3101: print_dialog_gtk-no-kEnableOopPrintDriversJobPrint.patch %if %{with clang} BuildRequires: clang @@ -376,9 +367,7 @@ %if %{with system_crc32c} BuildRequires: cmake(Crc32c) %endif -%if %{with system_double_conversion} BuildRequires: double-conversion-devel -%endif BuildRequires: desktop-file-utils BuildRequires: fdupes %if 0%{?fedora} @@ -449,6 +438,7 @@ %endif BuildRequires: util-linux BuildRequires: vulkan-headers +BuildRequires: wayland-devel BuildRequires: zstd %if %{with system_abseil} BuildRequires: pkgconfig(absl_algorithm_container) >= 20211000 @@ -496,18 +486,18 @@ BuildRequires: pkgconfig(dbus-1) BuildRequires: pkgconfig(dri) BuildRequires: pkgconfig(expat) -%if %{with system_freetype} BuildRequires: pkgconfig(freetype2) -%endif BuildRequires: pkgconfig(gbm) BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(glproto) BuildRequires: pkgconfig(gtest) BuildRequires: pkgconfig(gtk+-3.0) -%if %{with system_harfbuzz} BuildRequires: pkgconfig(harfbuzz) >= 3 +%if %{with harfbuzz_5} +BuildRequires: pkgconfig(harfbuzz) >= 5 %endif + %if %{with icu_71} BuildRequires: pkgconfig(icu-i18n) >= 71 %else @@ -542,7 +532,7 @@ BuildRequires: pkgconfig(libdrm) BuildRequires: pkgconfig(libevent) %if %{with system_jxl} -BuildRequires: pkgconfig(libjxl) +BuildRequires: pkgconfig(libjxl) >= 0.7 %endif %if 0%{?fedora} >= 38 #Work around https://bugzilla.redhat.com/show_bug.cgi?id=2148612 @@ -558,9 +548,7 @@ BuildRequires: pkgconfig(libsecret-1) BuildRequires: pkgconfig(libva) BuildRequires: pkgconfig(libwebp) >= 0.4.0 -%if %{with system_woff2} BuildRequires: pkgconfig(libwoff2dec) -%endif BuildRequires: pkgconfig(libxml-2.0) >= 2.9.5 BuildRequires: pkgconfig(libxslt) BuildRequires: pkgconfig(libxxhash) @@ -682,6 +670,10 @@ patch -R -p1 < %SOURCE400 %endif +%if %{without harfbuzz_5} +patch -R -p1 < %SOURCE415 +%endif + %if %{without icu_71} patch -R -p1 < %SOURCE410 patch -R -p1 < %SOURCE411 @@ -696,7 +688,9 @@ patch -R -p1 < %SOURCE420 # Link system wayland-protocols-devel into where chrome expects them +mkdir -p third_party/wayland/src mkdir -p third_party/wayland-protocols/kde/src +ln -svfT %{_datadir}/wayland third_party/wayland/src/protocol #mkdir -p third_party/wayland-protocols/mesa #ln -svfT %{_datadir}/wayland-protocols third_party/wayland-protocols/src @@ -862,6 +856,7 @@ export LDFLAGS="${LDFLAGS} -Wl,--no-keep-memory -Wl,--hash-size=30 -Wl,--reduce-memory-overheads" %endif %endif +export LDFLAGS="$LDFLAGS --param ggc-min-expand=30 --param ggc-min-heapsize=4096" %endif test "$_link_threads" -le 0 && _link_threads=1 @@ -870,10 +865,13 @@ gn_system_libraries=( brotli + double-conversion ffmpeg flac flatbuffers fontconfig + freetype + harfbuzz-ng icu libdrm libevent @@ -887,6 +885,7 @@ opus re2 snappy + woff2 zlib ) @@ -901,6 +900,8 @@ absl_flags absl_functional absl_hash + absl_log + absl_log_internal absl_memory absl_meta absl_numeric @@ -942,11 +943,6 @@ gn_system_libraries+=( dav1d ) %endif -%if %{with system_double_conversion} -find base/third_party/double_conversion -type f ! -name "*.gn" -a ! -name "*.gni" -delete -gn_system_libraries+=( double-conversion ) -%endif - %if %{with system_nvctrl} find third_party/angle/src/third_party/libXNVCtrl/ -type f ! -name "*.gn" -a ! -name "*.gni" -delete gn_system_libraries+=( libXNVCtrl ) @@ -968,25 +964,11 @@ ) %endif -%if %{with system_harfbuzz} -find third_party/harfbuzz-ng -type f ! -name "*.gn" -a ! -name "*.gni" -a ! -path "third_party/harfbuzz-ng/utils/hb_scoped.h" -delete -gn_system_libraries+=( harfbuzz-ng ) -%endif - -%if %{with system_freetype} -find third_party/freetype -type f ! -name "*.gn" -a ! -name "*.gni" -delete -gn_system_libraries+=( freetype ) -%endif - %if %{with system_vpx} find third_party/libvpx -type f ! -name "*.gn" -a ! -name "*.gni" -delete gn_system_libraries+=( libvpx ) %endif -%if %{with system_woff2} -find third_party/woff2 -type f ! -name "*.gn" -a ! -name "*.gni" -delete -gn_system_libraries+=( woff2 ) -%endif %if %{with system_yuv} find third_party/libyuv -type f ! -name "*.gn" -a ! -name "*.gni" -delete @@ -1179,12 +1161,9 @@ myconf_gn+=" use_system_lcms2=true" myconf_gn+=" use_system_libopenjpeg2=true" myconf_gn+=" use_system_wayland_scanner=true" -%if %{with system_harfbuzz} +myconf_gn+=" use_system_libwayland=true" myconf_gn+=" use_system_harfbuzz=true" -%endif -%if %{with system_freetype} myconf_gn+=" use_system_freetype=true" -%endif myconf_gn+=" use_system_cares=true" %if %{with system_nghttp2} myconf_gn+=" use_system_nghttp2=true" ++++++ CVE-2022-43548.patch ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:13.533447430 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:13.533447430 +0100 @@ -23,12 +23,13 @@ index ab1cdf1fa5bd..8001d893e1fd 100644 --- a/third_party/electron_node/src/inspector_socket.cc +++ b/third_party/electron_node/src/inspector_socket.cc -@@ -162,24 +162,70 @@ static std::string TrimPort(const std::string& host) { +@@ -162,25 +162,70 @@ static std::string TrimPort(const std::string& host) { } static bool IsIPAddress(const std::string& host) { - if (host.length() >= 4 && host.front() == '[' && host.back() == ']') - return true; +- if (host.front() == '0') return false; - uint_fast16_t accum = 0; - uint_fast8_t quads = 0; - bool empty = true; ++++++ NumberFormat-icu71-incrementExact.patch ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:13.549447516 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:13.553447537 +0100 @@ -50,23 +50,4 @@ .withMinFraction(digit_options.minimum_fraction_digits); } if (trailing_zeros == JSNumberFormat::ShowTrailingZeros::kHide) { -diff --git a/test/test262/test262.status b/test/test262/test262.status -index d47d96c9dae..8d1e39d65d4 100644 ---- a/v8/test/test262/test262.status -+++ b/v8/test/test262/test262.status -@@ -3128,14 +3128,6 @@ - 'language/identifiers/start-unicode-9*': [FAIL], - }], # no_i18n == True - --['arch == arm64', { -- # Problem in V8 Android Arm64 - N5X -- 'intl402/NumberFormat/prototype/format/format-rounding-increment-1000': [SKIP], -- 'intl402/NumberFormat/prototype/format/format-rounding-increment-2000': [SKIP], -- 'intl402/NumberFormat/prototype/format/format-rounding-increment-2500': [SKIP], -- 'intl402/NumberFormat/prototype/format/format-rounding-increment-5000': [SKIP], --}], # 'arch == arm64' -- - ['arch == arm or arch == mipsel or arch == mips or arch == arm64 or arch == mips64 or arch == mips64el', { - - # Causes stack overflow on simulators due to eager compilation of ++++++ base-system-nspr.patch ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:13.585447709 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:13.585447709 +0100 @@ -17,7 +17,7 @@ +pkg_config("system_nspr") { + packages = [ "nspr" ] +} - # Copyright (c) 2013 The Chromium Authors. All rights reserved. + # Copyright 2013 The Chromium Authors # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. @@ -826,8 +831,6 @@ ++++++ chromium-102-compiler.patch ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:13.605447817 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:13.609447839 +0100 @@ -99,7 +99,7 @@ cflags = [] ldflags = [] defines = [] -@@ -1227,45 +1203,6 @@ +@@ -1227,46 +1203,6 @@ } } @@ -122,6 +122,7 @@ - # -ffile-compilation-dir is an alias for both -fdebug-compilation-dir= - # and -fcoverage-compilation-dir=. - cflags += [ "-ffile-compilation-dir=." ] +- swiftflags += [ "-file-compilation-dir=." ] - } - if (!is_win) { - # We don't use clang -cc1as on Windows (yet? https://crbug.com/762167) @@ -182,7 +183,7 @@ - if (!is_debug && !using_sanitizer && current_cpu != "s390x" && - current_cpu != "s390" && current_cpu != "ppc64" && - current_cpu != "mips" && current_cpu != "mips64" && -- current_cpu != "riscv64") { +- current_cpu != "riscv64" && current_cpu != "loong64") { - # Non-chromium code is not guaranteed to compile cleanly with - # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are - # disabled, so only do that for Release build. ++++++ chromium-108-abseil-shims.patch ++++++ --- /dev/null +++ b/build/linux/unbundle/absl_log.gn @@ -0,0 +1,13 @@ +source_set("basic_log_test") {} +source_set("check_test") {} +source_set("die_if_null_test") {} +source_set("flags_test") {} +source_set("globals_test") {} +source_set("log_entry_test") {} +source_set("log_format_test") {} +source_set("log_macro_hygiene_test") {} +source_set("log_modifier_methods_test") {} +source_set("log_sink_test") {} +source_set("log_streamer_test") {} +source_set("scoped_mock_log_test") {} +source_set("stripping_test") {} --- /dev/null +++ b/build/linux/unbundle/absl_log_internal.gn @@ -0,0 +1,1 @@ +source_set("stderr_log_sink_test") {} --- a/build/linux/unbundle/replace_gn_files.py +++ b/build/linux/unbundle/replace_gn_files.py @@ -15,7 +15,7 @@ REPLACEMENTS = { - # Use system libabsl_2xxx. These 18 shims MUST be used together. + # Use system libabsl_2xxx. These 20 shims MUST be used together. 'absl_algorithm': 'third_party/abseil-cpp/absl/algorithm/BUILD.gn', 'absl_base': 'third_party/abseil-cpp/absl/base/BUILD.gn', 'absl_cleanup': 'third_party/abseil-cpp/absl/cleanup/BUILD.gn', @@ -24,6 +24,8 @@ 'absl_flags': 'third_party/abseil-cpp/absl/flags/BUILD.gn', 'absl_functional': 'third_party/abseil-cpp/absl/functional/BUILD.gn', 'absl_hash': 'third_party/abseil-cpp/absl/hash/BUILD.gn', + 'absl_log': 'third_party/abseil-cpp/absl/log/BUILD.gn', + 'absl_log_internal': 'third_party/abseil-cpp/absl/log/internal/BUILD.gn', 'absl_memory': 'third_party/abseil-cpp/absl/memory/BUILD.gn', 'absl_meta': 'third_party/abseil-cpp/absl/meta/BUILD.gn', 'absl_numeric': 'third_party/abseil-cpp/absl/numeric/BUILD.gn', --- a/build/linux/unbundle/absl_container.gn +++ b/build/linux/unbundle/absl_container.gn @@ -109,6 +109,8 @@ public_configs = [ ":system_absl_node_hash_set" ] } +source_set("common_policy_traits_test") { +} source_set("inlined_vector_test") { } source_set("node_slot_policy_test") { --- a/build/linux/unbundle/absl_functional.gn +++ b/build/linux/unbundle/absl_functional.gn @@ -45,3 +45,5 @@ deps = [ ":function_ref_shim" ] public_configs = [ ":system_absl_function_ref" ] } + +source_set("any_invocable_test") {} ++++++ chromium-98-EnumTable-crash.patch ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:13.645448032 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:13.645448032 +0100 @@ -1,7 +1,7 @@ diff --git a/components/cast_channel/enum_table.h b/components/cast_channel/enum_table.h index 842553a..89de703 100644 ---- a/components/cast_channel/enum_table.h -+++ b/components/cast_channel/enum_table.h +--- a/components/media_router/common/providers/cast/channel/enum_table.h ++++ b/components/media_router/common/providers/cast/channel/enum_table.h @@ -8,6 +8,7 @@ #include <cstdint> #include <cstring> ++++++ chromium-gcc11.patch ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:13.665448139 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:13.669448162 +0100 @@ -1,15 +1,3 @@ -Index: electron-17.1.0/third_party/angle/src/libANGLE/HandleAllocator.cpp -=================================================================== ---- electron-17.1.0.orig/third_party/angle/src/libANGLE/HandleAllocator.cpp 2022-03-07 17:22:29.553295179 +0100 -+++ electron-17.1.0/third_party/angle/src/libANGLE/HandleAllocator.cpp 2022-03-09 08:25:10.346569313 +0100 -@@ -9,6 +9,7 @@ - - #include "libANGLE/HandleAllocator.h" - -+#include <limits> - #include <algorithm> - #include <functional> - Index: electron-17.1.0/third_party/perfetto/src/trace_processor/containers/string_pool.cc =================================================================== --- electron-17.1.0.orig/third_party/perfetto/src/trace_processor/containers/string_pool.cc 2022-03-07 17:28:24.814737660 +0100 ++++++ chromium-norar.patch ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:13.681448226 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:13.681448226 +0100 @@ -48,18 +48,19 @@ ":download_type_util", - ":rar_analyzer", "//components/safe_browsing/core/common", + "//third_party/lzma_sdk/google:seven_zip_reader", ] - Index: electron-17.1.0/chrome/common/safe_browsing/DEPS =================================================================== --- electron-17.1.0.orig/chrome/common/safe_browsing/DEPS 2022-03-07 17:20:32.164818543 +0100 +++ electron-17.1.0/chrome/common/safe_browsing/DEPS 2022-03-09 08:25:16.218473339 +0100 -@@ -3,6 +3,5 @@ include_rules = [ +@@ -3,7 +3,6 @@ include_rules = [ "+components/safe_browsing/core/common", "+third_party/maldoca", "+third_party/protobuf", - "+third_party/unrar", "+third_party/zlib", + "+third_party/lzma_sdk/google", ] Index: electron-17.1.0/chrome/services/file_util/BUILD.gn =================================================================== @@ -77,7 +78,7 @@ =================================================================== --- electron-17.1.0.orig/chrome/services/file_util/safe_archive_analyzer.cc 2022-03-07 17:20:32.264818949 +0100 +++ electron-17.1.0/chrome/services/file_util/safe_archive_analyzer.cc 2022-03-09 08:25:16.218473339 +0100 -@@ -44,10 +44,14 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile +@@ -44,12 +44,16 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file, base::File temporary_file, AnalyzeRarFileCallback callback) { @@ -92,4 +93,6 @@ + NOTREACHED(); +#endif } + + void SafeArchiveAnalyzer::AnalyzeSevenZipFile( ++++++ crashpad-elf_image_reader-ProgramHeaderTableSpecific-expected-unqualified-id.patch ++++++ >From 0acdadf032955add4a996332c19e08f7cecd7558 Mon Sep 17 00:00:00 2001 From: Stephan Hartmann <sth...@googlemail.com> Date: Fri, 30 Sep 2022 14:07:07 +0200 Subject: [PATCH] snapshot: remove redundant template parameter GCC 12 does not allow it in C++20 mode anymore. Bug: chromium:819294 Change-Id: I025dda8046739fefc4ff449d4496ef496374eff5 Reviewed-on: https://chromium-review.googlesource.com/c/crashpad/crashpad/+/3929186 Commit-Queue: Mark Mentovai <m...@chromium.org> Reviewed-by: Mark Mentovai <m...@chromium.org> --- snapshot/elf/elf_image_reader.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/snapshot/elf/elf_image_reader.cc b/snapshot/elf/elf_image_reader.cc index 9d3ba43ab..30e8b987c 100644 --- a/third_party/crashpad/crashpad/snapshot/elf/elf_image_reader.cc +++ b/third_party/crashpad/crashpad/snapshot/elf/elf_image_reader.cc @@ -56,14 +56,14 @@ template <typename PhdrType> class ElfImageReader::ProgramHeaderTableSpecific : public ElfImageReader::ProgramHeaderTable { public: - ProgramHeaderTableSpecific<PhdrType>() {} + ProgramHeaderTableSpecific() {} - ProgramHeaderTableSpecific<PhdrType>( + ProgramHeaderTableSpecific( const ProgramHeaderTableSpecific<PhdrType>&) = delete; ProgramHeaderTableSpecific<PhdrType>& operator=( const ProgramHeaderTableSpecific<PhdrType>&) = delete; - ~ProgramHeaderTableSpecific<PhdrType>() {} + ~ProgramHeaderTableSpecific() {} bool Initialize(const ProcessMemoryRange& memory, VMAddress address, ++++++ create_tarball.sh ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:13.725448462 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:13.729448483 +0100 @@ -213,7 +213,6 @@ third_party/electron_node #Integral part of electron third_party/emoji-segmenter #not available as a shared library third_party/fdlibm #derived code, not vendored dep - third_party/harfbuzz-ng/utils #There are new google files within this directory. third_party/highway #Not in Leap third_party/hunspell #heavily forked version third_party/iccjpeg #not in any distro @@ -226,6 +225,7 @@ third_party/libaddressinput #seems not to be available as a separate library third_party/libaom #version in Factory is too old third_party/libaom/source/libaom/third_party/fastfeat + third_party/libaom/source/libaom/third_party/SVT-AV1 third_party/libaom/source/libaom/third_party/vector third_party/libaom/source/libaom/third_party/x86inc third_party/libavif #leap too old @@ -253,7 +253,6 @@ third_party/metrics_proto #integral part of chrome third_party/modp_b64 #not in any distro third_party/node #javascript code - third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2/ third_party/one_euro_filter #not in any distro third_party/openscreen #Integral part of chrome, needed even if you're building without. third_party/openscreen/src/third_party/mozilla #derived code, not vendored dependency @@ -275,8 +274,6 @@ third_party/rnnoise #use of private headers third_party/shell-encryption #not available on any distro, also heavily patched third_party/skia #integral part of chrome - third_party/skia/include/third_party/skcms #part of skia, not available as a separate library - third_party/skia/third_party/skcms #part of skia, not available as a separate library third_party/smhasher #not in Rawhide or Factory. AltLinux has it (libsmhasher) CONSIDER UNBUNDLING if we have it third_party/speech-dispatcher #Headers for a delay-loaded optional dependency third_party/sqlite #heavily forked version @@ -306,7 +303,6 @@ third_party/webrtc/rtc_base/third_party/sigslot #derived code, not vendored dep third_party/webrtc_overrides #Integral part of chrome third_party/widevine #Integral part of chrome. Needed. - third_party/wayland/protocol #added chromium code third_party/wayland/stubs #added chromium code third_party/wayland/wayland_scanner_wrapper.py #wrapper script third_party/wayland-protocols/gtk/gdk/wayland/protocol #Imagine downloading 100MB of gtk source just to get one file. ++++++ disable-catapult.patch ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:13.741448549 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:13.745448570 +0100 @@ -204,7 +204,7 @@ --- a/content/browser/tracing/BUILD.gn +++ /dev/null @@ -1,39 +0,0 @@ --# Copyright 2014 The Chromium Authors. All rights reserved. +-# Copyright 2014 The Chromium Authors -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - ++++++ disable-webspeech.patch ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:13.761448656 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:13.765448678 +0100 @@ -158,9 +158,9 @@ map->Add<blink::mojom::SpeechSynthesis>(base::BindRepeating( &RenderFrameHostImpl::GetSpeechSynthesis, base::Unretained(host))); @@ -1099,6 +1107,7 @@ void PopulateBinderMapWithContext( - map->Add<blink::mojom::DirectSocketsService>( - base::BindRepeating(&DirectSocketsServiceImpl::CreateForFrame)); - } + #if !BUILDFLAG(IS_ANDROID) + map->Add<blink::mojom::DirectSocketsService>( + base::BindRepeating(&DirectSocketsServiceImpl::CreateForFrame)); +#if BUILDFLAG(ENABLE_WEB_SPEECH) map->Add<media::mojom::SpeechRecognitionContext>(base::BindRepeating( &EmptyBinderForFrame<media::mojom::SpeechRecognitionContext>)); ++++++ document_loader-private-DecodedBodyData.patch ++++++ >From 82827b0a8683c5c9c7285db48cefb7fa8ea92ffe Mon Sep 17 00:00:00 2001 From: Jose Dapena Paz <jdap...@igalia.com> Date: Thu, 20 Oct 2022 16:27:27 +0000 Subject: [PATCH] GCC: declare DocumentLoader::DecodedBodyData as public Fix build with GCC as DocumentLoader::DecodedBodyData was not declaring SameSizeAsDocumentLoader. This works in Clang because declaring it as friend of DocumentLoader implicitly declares it as friend of its class members. But GCC does not accept that. Bug: 819294 Change-Id: Iba6a4138fbd90831e7a65fae8445ad4b1736594f Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3963839 Commit-Queue: José Dapena Paz <jdap...@igalia.com> Reviewed-by: Nate Chapin <jap...@chromium.org> Cr-Commit-Position: refs/heads/main@{#1061645} --- diff --git a/third_party/blink/renderer/core/loader/document_loader.h b/third_party/blink/renderer/core/loader/document_loader.h index b22fe2a..37a4230 100644 --- a/third_party/blink/renderer/core/loader/document_loader.h +++ b/third_party/blink/renderer/core/loader/document_loader.h @@ -434,6 +434,11 @@ const KURL& url, const ResourceResponse& response); + // This needs to be kept as public to be accessible from + // SameSizeAsDocumentLoader as GCC will fail to allow access + // even if it is friend of DocumentLoader + class DecodedBodyData; + protected: // Based on its MIME type, if the main document's response corresponds to an // MHTML archive, then every resources will be loaded from this archive. @@ -465,7 +470,6 @@ friend struct SameSizeAsDocumentLoader; class BodyData; class EncodedBodyData; - class DecodedBodyData; Frame* CalculateOwnerFrame(); scoped_refptr<SecurityOrigin> CalculateOrigin(Document* owner_document); ++++++ electron_serial_delegate-ambiguous-Observer.patch ++++++ --- a/electron/shell/browser/serial/electron_serial_delegate.h 2022-09-16 12:31:19.704082600 +0200 +++ b/electron/shell/browser/serial/electron_serial_delegate.h 2022-09-16 21:30:57.247975900 +0200 @@ -38,9 +38,9 @@ device::mojom::SerialPortManager* GetPortManager( content::RenderFrameHost* frame) override; void AddObserver(content::RenderFrameHost* frame, - Observer* observer) override; + content::SerialDelegate::Observer* observer) override; void RemoveObserver(content::RenderFrameHost* frame, - Observer* observer) override; + content::SerialDelegate::Observer* observer) override; void DeleteControllerForFrame(content::RenderFrameHost* render_frame_host); ++++++ enable-jxl.patch ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:13.849449129 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:13.849449129 +0100 @@ -3,11 +3,11 @@ --- a/third_party/blink/common/features.cc +++ b/third_party/blink/common/features.cc @@ -767,7 +767,7 @@ - "OffsetParentNewSpecBehavior", base::FEATURE_DISABLED_BY_DEFAULT}; + "delay-in-ms", 0}; // Enables the JPEG XL Image File Format (JXL). --const base::Feature kJXL{"JXL", base::FEATURE_DISABLED_BY_DEFAULT}; -+const base::Feature kJXL{"JXL", base::FEATURE_ENABLED_BY_DEFAULT}; +-BASE_FEATURE(kJXL, "JXL", base::FEATURE_DISABLED_BY_DEFAULT); ++BASE_FEATURE(kJXL, "JXL", base::FEATURE_ENABLED_BY_DEFAULT); // Make all pending 'display: auto' web fonts enter the swap or failure period // immediately before reaching the LCP time limit (~2500ms), so that web fonts ++++++ first_party_set_parser-IssueWithMetadata-no-known-conversion.patch ++++++ --- src/content/browser/first_party_sets/first_party_set_parser.cc.old 2022-11-30 11:28:02.726199100 +0100 +++ src/content/browser/first_party_sets/first_party_set_parser.cc 2022-12-01 06:53:17.058993800 +0100 @@ -182,7 +182,7 @@ ParseSiteAndValidate(item, set_entries, elements, emit_errors); if (!alias_or_error.has_value()) { return base::unexpected( - ParseError(alias_or_error.error(), {kCCTLDsField, site, i})); + ParseError(alias_or_error.error(), {kCCTLDsField, site, static_cast<int>(i)})); } const net::SchemefulSite alias = alias_or_error.value(); @@ -195,7 +195,7 @@ if (warnings) { warnings->push_back( ParseWarning(ParseWarningType::kAliasNotCctldVariant, - {kCCTLDsField, site, i})); + {kCCTLDsField, site, static_cast<int>(i)})); } continue; } @@ -230,7 +230,7 @@ base::expected<net::SchemefulSite, ParseErrorType> site_or_error = ParseSiteAndValidate(item, set_entries, other_sets_sites, emit_errors); if (!site_or_error.has_value()) - return ParseError(site_or_error.error(), {descriptor.field_name, index}); + return ParseError(site_or_error.error(), {descriptor.field_name, static_cast<int>(index)}); if (exempt_from_limits || !descriptor.size_limit.has_value() || static_cast<int>(index) < descriptor.size_limit.value()) { set_entries.emplace_back( ++++++ fpic.patch ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:13.889449345 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:13.893449366 +0100 @@ -95,11 +95,11 @@ + asmflags = ["-fpic", "-fno-semantic-interposition"] } - shared_library("qt5_shim") { + if (!use_sysroot) { @@ -76,6 +78,8 @@ - # 3. Manually add copyright header. - "qt_shim_moc.cc", - ] + sources += get_target_outputs(":generate_moc") + deps += [ ":generate_moc" ] + } + cflags = ["-fpic", "-fno-semantic-interposition"] + asmflags = ["-fpic", "-fno-semantic-interposition"] } ++++++ harfbuzz-replace-chromium-scoped-type.patch ++++++ >From aa2ff2bee16776301bd840a4e18bdebdfb916822 Mon Sep 17 00:00:00 2001 From: Munira Tursunova <moon...@google.com> Date: Tue, 04 Oct 2022 14:20:04 +0000 Subject: [PATCH] Replacing Chromium scoped types with HarfBuzz custom types. Removed the Chromium side type HbScoped and move to the HarfBuzz custom type. Bug: 1363228 Change-Id: I9d390808953e2c36651533cbf5f4958beff2e14d Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3927859 Reviewed-by: Dominik Röttsches <dr...@chromium.org> Reviewed-by: Rune Lillesveen <futh...@chromium.org> Reviewed-by: Calder Kitagawa <ckitag...@chromium.org> Commit-Queue: Munira Tursunova <moon...@google.com> Cr-Commit-Position: refs/heads/main@{#1054692} --- diff --git a/components/paint_preview/DEPS b/components/paint_preview/DEPS index bcc6288..28f2c7a 100644 --- a/components/paint_preview/DEPS +++ b/components/paint_preview/DEPS @@ -3,7 +3,6 @@ "+components/memory_pressure", "+mojo/public/cpp", "+third_party/harfbuzz-ng/src/src", - "+third_party/harfbuzz-ng/utils/hb_scoped.h", "+third_party/skia/include/core", "+ui/gfx/geometry", ] diff --git a/components/paint_preview/common/BUILD.gn b/components/paint_preview/common/BUILD.gn index 377dc92..c39757d 100644 --- a/components/paint_preview/common/BUILD.gn +++ b/components/paint_preview/common/BUILD.gn @@ -37,7 +37,6 @@ "//components/crash/core/common:crash_key_lib", "//skia", "//third_party:freetype_harfbuzz", - "//third_party/harfbuzz-ng:hb_scoped_util", "//ui/gfx/geometry", "//url", ] diff --git a/components/paint_preview/common/subset_font.cc b/components/paint_preview/common/subset_font.cc index 8298861d5..147dfc3 100644 --- a/components/paint_preview/common/subset_font.cc +++ b/components/paint_preview/common/subset_font.cc @@ -7,6 +7,7 @@ // clang-format off #include <hb.h> #include <hb-subset.h> +#include <hb-cplusplus.hh> // clang-format on #include <memory> @@ -17,7 +18,6 @@ #include "base/callback.h" #include "base/numerics/safe_conversions.h" #include "components/crash/core/common/crash_key.h" -#include "third_party/harfbuzz-ng/utils/hb_scoped.h" #include "third_party/skia/include/core/SkStream.h" #include "third_party/skia/include/core/SkTypeface.h" @@ -45,11 +45,11 @@ } // Converts SkData to a hb_blob_t. -HbScoped<hb_blob_t> MakeBlob(sk_sp<SkData> data) { +hb::unique_ptr<hb_blob_t> MakeBlob(sk_sp<SkData> data) { if (!data || !base::IsValueInRangeForNumericType<unsigned int, size_t>(data->size())) - return nullptr; - return HbScoped<hb_blob_t>( + return hb::unique_ptr<hb_blob_t>(nullptr); + return hb::unique_ptr<hb_blob_t>( hb_blob_create(static_cast<const char*>(data->data()), static_cast<unsigned int>(data->size()), HB_MEMORY_MODE_READONLY, nullptr, nullptr)); @@ -72,8 +72,9 @@ family_name.c_str()); int ttc_index = 0; sk_sp<SkData> data = StreamToData(typeface->openStream(&ttc_index)); - HbScoped<hb_face_t> face(hb_face_create(MakeBlob(data).get(), ttc_index)); - HbScoped<hb_subset_input_t> input(hb_subset_input_create_or_fail()); + hb::unique_ptr<hb_face_t> face( + hb_face_create(MakeBlob(data).get(), ttc_index)); + hb::unique_ptr<hb_subset_input_t> input(hb_subset_input_create_or_fail()); if (!face || !input) { return nullptr; } @@ -102,14 +103,16 @@ hb_set_add(skip_subset, HB_TAG('G', 'S', 'U', 'B')); hb_set_add(skip_subset, HB_TAG('G', 'P', 'O', 'S')); - HbScoped<hb_face_t> subset_face(hb_subset_or_fail(face.get(), input.get())); + hb::unique_ptr<hb_face_t> subset_face( + hb_subset_or_fail(face.get(), input.get())); if (!subset_face) { return nullptr; } // Store the correct collection index for the subsetted font. const int final_ttc_index = hb_face_get_index(subset_face.get()); - HbScoped<hb_blob_t> subset_blob(hb_face_reference_blob(subset_face.get())); + hb::unique_ptr<hb_blob_t> subset_blob( + hb_face_reference_blob(subset_face.get())); if (!subset_blob) { return nullptr; } diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/renderer/platform/BUILD.gn index 88cef3c..ae88e5a 100644 --- a/third_party/blink/renderer/platform/BUILD.gn +++ b/third_party/blink/renderer/platform/BUILD.gn @@ -1683,7 +1683,6 @@ "//third_party/blink/renderer/platform/wtf", "//third_party/ced", "//third_party/emoji-segmenter", - "//third_party/harfbuzz-ng:hb_scoped_util", "//third_party/icu", "//third_party/libyuv", "//third_party/one_euro_filter", diff --git a/third_party/blink/renderer/platform/fonts/opentype/font_format_check.cc b/third_party/blink/renderer/platform/fonts/opentype/font_format_check.cc index 7c7057b..d43668f1 100644 --- a/third_party/blink/renderer/platform/fonts/opentype/font_format_check.cc +++ b/third_party/blink/renderer/platform/fonts/opentype/font_format_check.cc @@ -7,10 +7,10 @@ // Include HarfBuzz to have a cross-platform way to retrieve table tags without // having to rely on the platform being able to instantiate this font format. #include <hb.h> +#include <hb-cplusplus.hh> #include "base/sys_byteorder.h" #include "third_party/blink/renderer/platform/wtf/vector.h" -#include "third_party/harfbuzz-ng/utils/hb_scoped.h" #include "third_party/skia/include/core/SkTypeface.h" namespace blink { @@ -27,7 +27,8 @@ const unsigned int kMinCOLRHeaderSize = 14; if (table_tags.size() && table_tags.Contains(kCOLRTag) && table_tags.Contains(HB_TAG('C', 'P', 'A', 'L'))) { - HbScoped<hb_blob_t> table_blob(hb_face_reference_table(face, kCOLRTag)); + hb::unique_ptr<hb_blob_t> table_blob( + hb_face_reference_table(face, kCOLRTag)); if (hb_blob_get_length(table_blob.get()) < kMinCOLRHeaderSize) return FontFormatCheck::COLRVersion::kNoCOLR; @@ -51,11 +52,11 @@ } // namespace FontFormatCheck::FontFormatCheck(sk_sp<SkData> sk_data) { - HbScoped<hb_blob_t> font_blob( + hb::unique_ptr<hb_blob_t> font_blob( hb_blob_create(reinterpret_cast<const char*>(sk_data->bytes()), base::checked_cast<unsigned>(sk_data->size()), HB_MEMORY_MODE_READONLY, nullptr, nullptr)); - HbScoped<hb_face_t> face(hb_face_create(font_blob.get(), 0)); + hb::unique_ptr<hb_face_t> face(hb_face_create(font_blob.get(), 0)); unsigned table_count = 0; table_count = hb_face_get_table_tags(face.get(), 0, nullptr, nullptr); diff --git a/third_party/blink/renderer/platform/fonts/opentype/open_type_caps_support.cc b/third_party/blink/renderer/platform/fonts/opentype/open_type_caps_support.cc index 5e6d1f2..73b984a 100644 --- a/third_party/blink/renderer/platform/fonts/opentype/open_type_caps_support.cc +++ b/third_party/blink/renderer/platform/fonts/opentype/open_type_caps_support.cc @@ -5,10 +5,10 @@ // clang-format off #include <hb.h> #include <hb-aat.h> +#include <hb-cplusplus.hh> // clang-format on #include "third_party/blink/renderer/platform/fonts/opentype/open_type_caps_support.h" -#include "third_party/harfbuzz-ng/utils/hb_scoped.h" namespace blink { @@ -146,9 +146,9 @@ hb_face_t* const hb_face = hb_font_get_face(harfbuzz_face_->GetScaledFont()); - HbScoped<hb_blob_t> morx_blob( + hb::unique_ptr<hb_blob_t> morx_blob( hb_face_reference_table(hb_face, HB_TAG('m', 'o', 'r', 'x'))); - HbScoped<hb_blob_t> mort_blob( + hb::unique_ptr<hb_blob_t> mort_blob( hb_face_reference_table(hb_face, HB_TAG('m', 'o', 'r', 't'))); // TODO(crbug.com/911149): Use hb_aat_layout_has_substitution() for diff --git a/third_party/blink/renderer/platform/fonts/opentype/open_type_cpal_lookup.cc b/third_party/blink/renderer/platform/fonts/opentype/open_type_cpal_lookup.cc index 86c289c..98cbd7a 100644 --- a/third_party/blink/renderer/platform/fonts/opentype/open_type_cpal_lookup.cc +++ b/third_party/blink/renderer/platform/fonts/opentype/open_type_cpal_lookup.cc @@ -6,11 +6,11 @@ #include "third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face_from_typeface.h" #include "third_party/blink/renderer/platform/wtf/std_lib_extras.h" -#include "third_party/harfbuzz-ng/utils/hb_scoped.h" #include "third_party/skia/include/core/SkStream.h" // clang-format off #include <hb.h> +#include <hb-cplusplus.hh> #include <hb-ot.h> // clang-format on @@ -28,7 +28,7 @@ if (!typeface || !typeface->getTableSize(kCpalTag)) return absl::nullopt; - HbScoped<hb_face_t> face(HbFaceFromSkTypeface(typeface)); + hb::unique_ptr<hb_face_t> face(HbFaceFromSkTypeface(typeface)); if (!face || !hb_ot_color_has_palettes(face.get())) return absl::nullopt; diff --git a/third_party/blink/renderer/platform/fonts/opentype/variable_axes_names.cc b/third_party/blink/renderer/platform/fonts/opentype/variable_axes_names.cc index ebab0fa8..4ecd886 100644 --- a/third_party/blink/renderer/platform/fonts/opentype/variable_axes_names.cc +++ b/third_party/blink/renderer/platform/fonts/opentype/variable_axes_names.cc @@ -4,12 +4,12 @@ #include "third_party/blink/renderer/platform/fonts/opentype/variable_axes_names.h" -#include "third_party/harfbuzz-ng/utils/hb_scoped.h" #include "third_party/skia/include/core/SkStream.h" #include "third_party/skia/include/core/SkTypeface.h" // clang-format off #include <hb.h> +#include <hb-cplusplus.hh> #include <hb-ot.h> // clang-format on @@ -23,11 +23,11 @@ return output; sk_sp<SkData> sk_data = SkData::MakeFromStream(stream.get(), stream->getLength()); - HbScoped<hb_blob_t> blob( + hb::unique_ptr<hb_blob_t> blob( hb_blob_create(reinterpret_cast<const char*>(sk_data->bytes()), base::checked_cast<unsigned>(sk_data->size()), HB_MEMORY_MODE_READONLY, nullptr, nullptr)); - HbScoped<hb_face_t> face(hb_face_create(blob.get(), 0)); + hb::unique_ptr<hb_face_t> face(hb_face_create(blob.get(), 0)); unsigned axes_count = hb_ot_var_get_axis_count(face.get()); std::unique_ptr<hb_ot_var_axis_info_t[]> axes = std::make_unique<hb_ot_var_axis_info_t[]>(axes_count); diff --git a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc index b4bb5a3..b6ee0a8f 100644 --- a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc +++ b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc @@ -32,6 +32,7 @@ // clang-format off #include <hb.h> +#include <hb-cplusplus.hh> #include <hb-ot.h> // clang-format on @@ -52,7 +53,6 @@ #include "third_party/blink/renderer/platform/resolution_units.h" #include "third_party/blink/renderer/platform/wtf/hash_map.h" #include "third_party/blink/renderer/platform/wtf/math_extras.h" -#include "third_party/harfbuzz-ng/utils/hb_scoped.h" #include "third_party/skia/include/core/SkPaint.h" #include "third_party/skia/include/core/SkPath.h" #include "third_party/skia/include/core/SkPoint.h" @@ -203,7 +203,7 @@ const hb_codepoint_t kInvalidCodepoint = static_cast<hb_codepoint_t>(-1); hb_codepoint_t space = kInvalidCodepoint; - HbScoped<hb_set_t> glyphs(hb_set_create()); + hb::unique_ptr<hb_set_t> glyphs(hb_set_create()); // Check whether computing is needed and compute for gpos/gsub. if (features & kKerning && @@ -391,8 +391,8 @@ } // TODO(yosin): We should move |CreateFace()| to "harfbuzz_font_cache.cc". -static HbScoped<hb_face_t> CreateFace(FontPlatformData* platform_data) { - HbScoped<hb_face_t> face; +static hb::unique_ptr<hb_face_t> CreateFace(FontPlatformData* platform_data) { + hb::unique_ptr<hb_face_t> face; sk_sp<SkTypeface> typeface = sk_ref_sp(platform_data->Typeface()); CHECK(typeface); @@ -402,8 +402,8 @@ // Fallback to table copies if there is no in-memory access. if (!face) { - face.reset(hb_face_create_for_tables(HarfBuzzSkiaGetTable, typeface.get(), - nullptr)); + face = hb::unique_ptr<hb_face_t>(hb_face_create_for_tables( + HarfBuzzSkiaGetTable, typeface.get(), nullptr)); } DCHECK(face); @@ -415,7 +415,7 @@ static scoped_refptr<HarfBuzzFontData> CreateHarfBuzzFontData( hb_face_t* face, SkTypeface* typeface) { - HbScoped<hb_font_t> ot_font(hb_font_create(face)); + hb::unique_ptr<hb_font_t> ot_font(hb_font_create(face)); hb_ot_font_set_funcs(ot_font.get()); int axis_count = typeface->getVariationDesignPosition(nullptr, 0); @@ -445,7 +445,7 @@ FontPlatformData* platform_data) { const auto& result = font_map_.insert(platform_data->UniqueID(), nullptr); if (result.is_new_entry) { - HbScoped<hb_face_t> face = CreateFace(platform_data); + hb::unique_ptr<hb_face_t> face = CreateFace(platform_data); result.stored_value->value = CreateHarfBuzzFontData(face.get(), platform_data->Typeface()); } diff --git a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.h b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.h index cbfb1c15..eb0dcb75 100644 --- a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.h +++ b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.h @@ -38,9 +38,9 @@ #include "third_party/blink/renderer/platform/wtf/allocator/allocator.h" #include "third_party/blink/renderer/platform/wtf/ref_counted.h" #include "third_party/blink/renderer/platform/wtf/text/character_names.h" -#include "third_party/harfbuzz-ng/utils/hb_scoped.h" #include <hb.h> +#include <hb-cplusplus.hh> namespace blink { diff --git a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face_from_typeface.cc b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face_from_typeface.cc index 4561bc9..a2d2eb1d 100644 --- a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face_from_typeface.cc +++ b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face_from_typeface.cc @@ -16,9 +16,8 @@ } // namespace namespace blink { - -HbScoped<hb_face_t> HbFaceFromSkTypeface(sk_sp<SkTypeface> typeface) { - HbScoped<hb_face_t> return_face(nullptr); +hb::unique_ptr<hb_face_t> HbFaceFromSkTypeface(sk_sp<SkTypeface> typeface) { + hb::unique_ptr<hb_face_t> return_face(nullptr); int ttc_index = 0; // Have openStream() write the ttc index of this typeface within the stream to @@ -28,7 +27,7 @@ if (tf_stream && tf_stream->getMemoryBase()) { const void* tf_memory = tf_stream->getMemoryBase(); size_t tf_size = tf_stream->getLength(); - HbScoped<hb_blob_t> face_blob(hb_blob_create( + hb::unique_ptr<hb_blob_t> face_blob(hb_blob_create( reinterpret_cast<const char*>(tf_memory), base::checked_cast<unsigned int>(tf_size), HB_MEMORY_MODE_READONLY, tf_stream.release(), DeleteTypefaceStream)); @@ -38,7 +37,8 @@ // See https://github.com/harfbuzz/harfbuzz/issues/248 . unsigned int num_hb_faces = hb_face_count(face_blob.get()); if (0 < num_hb_faces && static_cast<unsigned>(ttc_index) < num_hb_faces) { - return_face.reset(hb_face_create(face_blob.get(), ttc_index)); + return_face = + hb::unique_ptr<hb_face_t>(hb_face_create(face_blob.get(), ttc_index)); } } return return_face; diff --git a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face_from_typeface.h b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face_from_typeface.h index 8817f06..f00d6f2 100644 --- a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face_from_typeface.h +++ b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face_from_typeface.h @@ -8,9 +8,8 @@ #include "third_party/blink/renderer/platform/platform_export.h" #include "third_party/skia/include/core/SkTypeface.h" -#include "third_party/harfbuzz-ng/utils/hb_scoped.h" - #include <hb.h> +#include <hb-cplusplus.hh> namespace blink { @@ -25,7 +24,7 @@ // from copying all font tables on Mac into newly allocated memory, causing a // potentially quite large allocations (in the megabytes range). See the // implementation of SkTypeface_Mac::onOpenStream. -PLATFORM_EXPORT HbScoped<hb_face_t> HbFaceFromSkTypeface( +PLATFORM_EXPORT hb::unique_ptr<hb_face_t> HbFaceFromSkTypeface( sk_sp<SkTypeface> typeface); } // namespace blink diff --git a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_font_cache.cc b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_font_cache.cc index 763f3a3..c50910df 100644 --- a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_font_cache.cc +++ b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_font_cache.cc @@ -5,7 +5,6 @@ #include "third_party/blink/renderer/platform/fonts/shaping/harfbuzz_font_cache.h" #include "third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.h" #include "third_party/blink/renderer/platform/fonts/shaping/harfbuzz_font_data.h" -#include "third_party/harfbuzz-ng/utils/hb_scoped.h" namespace blink { diff --git a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_font_cache.h b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_font_cache.h index 1b0accf..eaedd0b 100644 --- a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_font_cache.h +++ b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_font_cache.h @@ -7,7 +7,6 @@ #include "third_party/blink/renderer/platform/fonts/font_metrics.h" #include "third_party/blink/renderer/platform/fonts/unicode_range_set.h" -#include "third_party/harfbuzz-ng/utils/hb_scoped.h" namespace blink { diff --git a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_font_data.h b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_font_data.h index caf5d49..0d4b6f9 100644 --- a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_font_data.h +++ b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_font_data.h @@ -5,6 +5,8 @@ #ifndef THIRD_PARTY_BLINK_RENDERER_PLATFORM_FONTS_SHAPING_HARFBUZZ_FONT_DATA_H_ #define THIRD_PARTY_BLINK_RENDERER_PLATFORM_FONTS_SHAPING_HARFBUZZ_FONT_DATA_H_ +#include <hb-cplusplus.hh> + #include "base/check_op.h" #include "third_party/blink/renderer/platform/fonts/font_platform_data.h" #include "third_party/blink/renderer/platform/fonts/opentype/open_type_vertical_data.h" @@ -81,7 +83,7 @@ return vertical_data_; } - HbScoped<hb_font_t> unscaled_font_; + hb::unique_ptr<hb_font_t> unscaled_font_; SkFont font_; // Capture these scaled fallback metrics from FontPlatformData so that a diff --git a/third_party/harfbuzz-ng/BUILD.gn b/third_party/harfbuzz-ng/BUILD.gn index 522e164d..4b64e1b 100644 --- a/third_party/harfbuzz-ng/BUILD.gn +++ b/third_party/harfbuzz-ng/BUILD.gn @@ -41,6 +41,7 @@ "src/src/hb-blob.h", "src/src/hb-buffer.h", "src/src/hb-common.h", + "src/src/hb-cplusplus.hh", "src/src/hb-deprecated.h", "src/src/hb-face.h", "src/src/hb-font.h", @@ -409,15 +410,9 @@ } } -source_set("hb_scoped_util") { - sources = [ "utils/hb_scoped.h" ] - deps = [ "//third_party:freetype_harfbuzz" ] -} - fuzzer_test("hb_shape_fuzzer") { sources = [ "fuzz/hb_shape_fuzzer.cc" ] deps = [ - ":hb_scoped_util", "//base", "//third_party:freetype_harfbuzz", ] @@ -427,7 +422,6 @@ fuzzer_test("hb_subset_fuzzer") { sources = [ "fuzz/hb_subset_fuzzer.cc" ] deps = [ - ":hb_scoped_util", "//base", "//third_party:freetype_harfbuzz", ] diff --git a/third_party/harfbuzz-ng/utils/hb_scoped.h b/third_party/harfbuzz-ng/utils/hb_scoped.h deleted file mode 100644 index 887f6b90..0000000 --- a/third_party/harfbuzz-ng/utils/hb_scoped.h +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2020 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef THIRD_PARTY_HARFBUZZ_NG_UTILS_HB_SCOPED_H_ -#define THIRD_PARTY_HARFBUZZ_NG_UTILS_HB_SCOPED_H_ - -// clang-format off -#include <hb.h> -#include <hb-subset.h> -// clang-format on - -#include <memory> -#include <type_traits> - -template <typename T> -struct always_false : std::false_type {}; - -template <class T> -struct HbSpecializedDeleter { - inline void operator()(T* obj) { - static_assert(always_false<T>::value, - "HbScoped is only allowed for HarfBuzz types that have a " - "deleter specialization."); - } -}; - -// Defines a scoped pointer type HbScoped based on std::unique_ptr, using the -// corresponsing HarfBuzz destructors to commonly used public HarfBuzz types. -// The interface of HbScoped is the same as that of std::unique_ptr. -// -// void MyFunction() { -// HbScoped<hb_blob_t> scoped_harfbuzz_blob( -// hb_blob_create(mydata, mylength)); -// -// DoSomethingWithBlob(scoped_harfbuzz_blob.get()); -// } -// -// When |scoped_harfbuzz_buffer| goes out of scope, hb_blob_destroy() is called -// for the hb_blob_t* created from hb_blob_create(). -template <class T> -using HbScoped = std::unique_ptr<T, HbSpecializedDeleter<T>>; - -#define SPECIALIZED_DELETER_FOR_HARFBUZZ_TYPE(TYPE, DESTRUCTOR) \ - template <> \ - struct HbSpecializedDeleter<TYPE> { \ - inline void operator()(TYPE* obj) { DESTRUCTOR(obj); } \ - }; - -#define HB_TYPE_DESTRUCTOR_PAIRS_REPEAT(F) \ - F(hb_blob_t, hb_blob_destroy) \ - F(hb_buffer_t, hb_buffer_destroy) \ - F(hb_face_t, hb_face_destroy) \ - F(hb_font_t, hb_font_destroy) \ - F(hb_set_t, hb_set_destroy) \ - F(hb_subset_input_t, hb_subset_input_destroy) - -HB_TYPE_DESTRUCTOR_PAIRS_REPEAT(SPECIALIZED_DELETER_FOR_HARFBUZZ_TYPE) - -#endif // THIRD_PARTY_HARFBUZZ_NG_UTILS_HB_SCOPED_H_ ++++++ ipcz-safe_math-Wuninitialized.patch ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:13.921449517 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:13.925449539 +0100 @@ -7,7 +7,7 @@ --- src/third_party/ipcz/src/util/safe_math.h.old 2022-10-20 19:00:41.567140300 +0200 +++ src/third_party/ipcz/src/util/safe_math.h 2022-10-29 22:46:07.312067200 +0200 -@@ -17,24 +17,24 @@ +@@ -17,8 +17,8 @@ // This throws a compile-time error on evaluating the constexpr if it can be // determined at compile-time as failing, otherwise it will fail an // assertion at runtime. @@ -18,6 +18,7 @@ return static_cast<Dst>(value); } +@@ -38,16 +38,16 @@ template <typename T> constexpr T CheckAdd(T a, T b) { T result; ++++++ partition_alloc-no-lto.patch ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:13.957449711 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:13.961449732 +0100 @@ -24,33 +24,33 @@ + } +} + - target(partition_alloc_target_type, "partition_alloc") { + component("partition_alloc") { sources = [ "address_pool_manager.cc", @@ -262,20 +278,10 @@ - "partition_alloc_base/mac/scoped_typeref.h", - ] + } } -- if (current_cpu == "x64") { -- defines += [ "PA_PCSCAN_STACK_SUPPORTED" ] -- sources += [ "starscan/stack/asm/x64/push_registers_asm.cc" ] -- } else if (current_cpu == "x86") { -- defines += [ "PA_PCSCAN_STACK_SUPPORTED" ] -- sources += [ "starscan/stack/asm/x86/push_registers_asm.cc" ] -- } else if (current_cpu == "arm") { -- defines += [ "PA_PCSCAN_STACK_SUPPORTED" ] -- sources += [ "starscan/stack/asm/arm/push_registers_asm.cc" ] -- } else if (current_cpu == "arm64") { -+ deps = [] -+ if (current_cpu == "x64" || current_cpu == "x86" || current_cpu == "arm" || current_cpu == "arm64") { - defines += [ "PA_PCSCAN_STACK_SUPPORTED" ] -- sources += [ "starscan/stack/asm/arm64/push_registers_asm.cc" ] -- } else { -- # To support a trampoline for another arch, please refer to v8/src/heap/base. -+ deps += [ ":partition_alloc_asm" ] + if (build_with_chromium) { +- if (current_cpu == "x64") { +- defines += [ "PA_PCSCAN_STACK_SUPPORTED" ] +- sources += [ "starscan/stack/asm/x64/push_registers_asm.cc" ] +- } else if (current_cpu == "x86") { +- defines += [ "PA_PCSCAN_STACK_SUPPORTED" ] +- sources += [ "starscan/stack/asm/x86/push_registers_asm.cc" ] +- } else if (current_cpu == "arm") { +- defines += [ "PA_PCSCAN_STACK_SUPPORTED" ] +- sources += [ "starscan/stack/asm/arm/push_registers_asm.cc" ] +- } else if (current_cpu == "arm64") { ++ deps = [] ++ if (current_cpu == "x64" || current_cpu == "x86" || current_cpu == "arm" || current_cpu == "arm64") { + defines += [ "PA_PCSCAN_STACK_SUPPORTED" ] +- sources += [ "starscan/stack/asm/arm64/push_registers_asm.cc" ] +- } else { +- # To support a trampoline for another arch, please refer to v8/src/heap/base. ++ deps += [ ":partition_alloc_asm" ] + } } public_deps = [ - ":chromecast_buildflags", @@ -289,7 +295,6 @@ ":partition_alloc_implementation", ":memory_tagging", ++++++ print_dialog_gtk-no-kEnableOopPrintDriversJobPrint.patch ++++++ >From e3fcdb9c67501e7e4b86ea904e154ea615b5187e Mon Sep 17 00:00:00 2001 From: Lei Zhang <thes...@chromium.org> Date: Tue, 18 Oct 2022 17:51:09 +0000 Subject: [PATCH] Fix build when enable_oop_printing=false. https://crrev.com/1050907 changed print_dialog_gtk.cc to start checking `kEnableOopPrintDriversJobPrint`, assuming it is unconditionally defined. Similarly, various CLs like https://crrev.com/992136 changed print_browsertest.cc without the proper conditionals. Change-Id: Ie7efe976bba4b7583be104fad37984bea07f8773 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3962532 Reviewed-by: Alan Screen <awscr...@chromium.org> Commit-Queue: Lei Zhang <thes...@chromium.org> Cr-Commit-Position: refs/heads/main@{#1060540} --- diff --git a/chrome/browser/printing/print_browsertest.cc b/chrome/browser/printing/print_browsertest.cc index a70cd643..c66456f 100644 --- a/chrome/browser/printing/print_browsertest.cc +++ b/chrome/browser/printing/print_browsertest.cc @@ -2733,6 +2733,7 @@ void PrimeAsRepeatingErrorGenerator() { reset_errors_after_check_ = false; } +#if BUILDFLAG(ENABLE_OOP_PRINTING) void PrimeForSpoolingSharedMemoryErrors() { simulate_spooling_memory_errors_ = true; } @@ -2784,6 +2785,7 @@ bool print_backend_service_use_detected() const { return print_backend_service_use_detected_; } +#endif // BUILDFLAG(ENABLE_OOP_PRINTING) mojom::ResultCode use_default_settings_result() const { return use_default_settings_result_; @@ -2838,7 +2840,6 @@ return std::make_unique<TestPrintJobWorker>( rfh_id, &test_print_job_worker_callbacks_); } -#endif // BUILDFLAG(ENABLE_OOP_PRINTING) void OnUseDefaultSettings() { did_use_default_settings_ = true; @@ -2861,6 +2862,7 @@ print_backend_service_use_detected_ = true; } } +#endif // BUILDFLAG(ENABLE_OOP_PRINTING) void ErrorCheck(mojom::ResultCode result) { // Interested to reset any trigger for causing access-denied errors, so diff --git a/ui/gtk/printing/print_dialog_gtk.cc b/ui/gtk/printing/print_dialog_gtk.cc index 98985bc..0596691 100644 --- a/ui/gtk/printing/print_dialog_gtk.cc +++ b/ui/gtk/printing/print_dialog_gtk.cc @@ -13,6 +13,7 @@ #include "base/bind.h" #include "base/check_op.h" +#include "base/dcheck_is_on.h" #include "base/files/file_util.h" #include "base/logging.h" #include "base/memory/raw_ptr.h" @@ -22,6 +23,7 @@ #include "base/task/thread_pool.h" #include "base/threading/sequenced_task_runner_handle.h" #include "base/values.h" +#include "printing/buildflags/buildflags.h" #include "printing/metafile.h" #include "printing/mojom/print.mojom.h" #include "printing/print_job_constants.h" @@ -419,11 +421,19 @@ void PrintDialogGtk::PrintDocument(const printing::MetafilePlayer& metafile, const std::u16string& document_name) { +#if DCHECK_IS_ON() +#if BUILDFLAG(ENABLE_OOP_PRINTING) + const bool kOopPrinting = + printing::features::kEnableOopPrintDriversJobPrint.Get(); +#else + const bool kOopPrinting = false; +#endif // BUILDFLAG(ENABLE_OOP_PRINTING) + // For in-browser printing, this runs on the print worker thread, so it does // not block the UI thread. For OOP it runs on the service document task // runner. - DCHECK_EQ(owning_task_runner()->RunsTasksInCurrentSequence(), - printing::features::kEnableOopPrintDriversJobPrint.Get()); + DCHECK_EQ(owning_task_runner()->RunsTasksInCurrentSequence(), kOopPrinting); +#endif // DCHECK_IS_ON() // The document printing tasks can outlive the PrintingContext that created // this dialog. ++++++ remove-date-reproducible-builds.patch ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:13.985449861 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:13.985449861 +0100 @@ -4,8 +4,8 @@ import re CHROMIUM_LICENSE = ( --"""// Copyright %d The Chromium Authors. All rights reserved. -+"""// Copyright 2022 The Chromium Authors. All rights reserved. +-"""// Copyright %d The Chromium Authors ++"""// Copyright 2022 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file.""" % datetime.now().year +// found in the LICENSE file.""" @@ -18,8 +18,8 @@ import struct_generator import element_generator --HEAD = u"""// Copyright %d The Chromium Authors. All rights reserved. -+HEAD = u"""// Copyright 2022 The Chromium Authors. All rights reserved. +-HEAD = u"""// Copyright %d The Chromium Authors ++HEAD = u"""// Copyright 2022 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -38,8 +38,8 @@ # The template for the header file of the generated FeatureProvider. HEADER_FILE_TEMPLATE = """ --// Copyright %(year)s The Chromium Authors. All rights reserved. -+// Copyright 2022 The Chromium Authors. All rights reserved. +-// Copyright %(year)s The Chromium Authors ++// Copyright 2022 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -47,8 +47,8 @@ # The beginning of the .cc file for the generated FeatureProvider. CC_FILE_BEGIN = """ --// Copyright %(year)s The Chromium Authors. All rights reserved. -+// Copyright 2022 The Chromium Authors. All rights reserved. +-// Copyright %(year)s The Chromium Authors ++// Copyright 2022 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. ++++++ skia-system-vulkan-headers.patch ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:14.005449969 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:14.009449990 +0100 @@ -1,7 +1,7 @@ Unbundle only Skia's vulkan headers. ANGLE needs the bleeding-edge ones in vulkan-deps ---- a/third_party/skia/include/gpu/vk/GrVkVulkan.h -+++ b/third_party/skia/include/gpu/vk/GrVkVulkan.h +--- a/third_party/skia/include/private/gpu/vk/SkiaVulkan.h ++++ b/third_party/skia/include/private/gpu/vk/SkiaVulkan.h @@ -11,7 +11,7 @@ #include "include/core/SkTypes.h" ++++++ swiftshader-LLVMJIT-AddressSanitizerPass-dead-code-remove.patch ++++++ Compiler complains about missing symbol on arm64: [ 1362s] ../../third_party/swiftshader/src/Reactor/LLVMJIT.cpp: In member function 'void rr::JITBuilder::runPasses()': [ 1362s] ../../third_party/swiftshader/src/Reactor/LLVMJIT.cpp:942:34: error: 'AddressSanitizerPass' is not a member of 'llvm'; did you mean 'AddressSanitizerOptions'? [ 1362s] 942 | pm.addPass(llvm::AddressSanitizerPass(llvm::AddressSanitizerOptions{})); [ 1362s] | ^~~~~~~~~~~~~~~~~~~~ [ 1362s] | AddressSanitizerOptions The offending code is dead, and this patch proves it. --- src/third_party/swiftshader/src/Reactor/LLVMJIT.cpp.old 2022-11-30 10:29:13.429851800 +0000 +++ src/third_party/swiftshader/src/Reactor/LLVMJIT.cpp 2022-11-30 21:19:08.387147100 +0000 @@ -930,18 +930,19 @@ { pm.addPass(llvm::createModuleToFunctionPassAdaptor(std::move(fpm))); } - +#if __has_feature(memory_sanitizer) if(__has_feature(memory_sanitizer) && msanInstrumentation) { llvm::MemorySanitizerOptions msanOpts(0 /* TrackOrigins */, false /* Recover */, false /* Kernel */, true /* EagerChecks */); pm.addPass(llvm::MemorySanitizerPass(msanOpts)); } - +#endif +#if __has_feature(address_sanitizer) if(__has_feature(address_sanitizer) && ADDRESS_SANITIZER_INSTRUMENTATION_SUPPORTED) { pm.addPass(llvm::AddressSanitizerPass(llvm::AddressSanitizerOptions{})); } - +#endif pm.run(*module, mam); #else // Legacy pass manager llvm::legacy::PassManager passManager; @@ -961,18 +962,19 @@ passManager.add(llvm::createSROAPass()); passManager.add(llvm::createInstructionCombiningPass()); } - +#if __has_feature(memory_sanitizer) if(__has_feature(memory_sanitizer) && msanInstrumentation) { llvm::MemorySanitizerOptions msanOpts(0 /* TrackOrigins */, false /* Recover */, false /* Kernel */); passManager.add(llvm::createMemorySanitizerLegacyPassPass(msanOpts)); } - +#endif +#if __has_feature(address_sanitizer) if(__has_feature(address_sanitizer) && ADDRESS_SANITIZER_INSTRUMENTATION_SUPPORTED) { passManager.add(llvm::createAddressSanitizerFunctionPass()); } - +#endif passManager.run(*module); #endif } ++++++ system-libdrm.patch ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:14.049450206 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:14.053450227 +0100 @@ -19,27 +19,27 @@ --- chromium-98.0.4758.80.orig/ui/ozone/platform/drm/gpu/crtc_controller.h +++ chromium-98.0.4758.80/ui/ozone/platform/drm/gpu/crtc_controller.h @@ -11,7 +11,7 @@ + #include <xf86drmMode.h> #include "base/memory/weak_ptr.h" - #include "base/trace_event/traced_value.h" -#include "third_party/libdrm/src/include/drm/drm_fourcc.h" +#include <drm_fourcc.h> + #include "third_party/perfetto/include/perfetto/tracing/traced_value_forward.h" #include "ui/gfx/swap_result.h" #include "ui/ozone/platform/drm/common/scoped_drm_types.h" - #include "ui/ozone/platform/drm/gpu/drm_overlay_plane.h" Index: chromium-98.0.4758.80/ui/ozone/platform/drm/gpu/hardware_display_controller.cc =================================================================== --- chromium-98.0.4758.80.orig/ui/ozone/platform/drm/gpu/hardware_display_controller.cc +++ chromium-98.0.4758.80/ui/ozone/platform/drm/gpu/hardware_display_controller.cc @@ -20,7 +20,7 @@ - #include "base/trace_event/trace_conversion_helper.h" - #include "base/trace_event/trace_event.h" - #include "base/trace_event/traced_value.h" + #include "base/ranges/algorithm.h" + #include "base/strings/stringprintf.h" + #include "base/trace_event/typed_macros.h" -#include "third_party/libdrm/src/include/drm/drm_fourcc.h" +#include <drm_fourcc.h> + #include "third_party/perfetto/include/perfetto/tracing/traced_value.h" #include "third_party/skia/include/core/SkCanvas.h" #include "third_party/skia/include/core/SkImage.h" - #include "ui/gfx/geometry/point.h" Index: chromium-98.0.4758.80/media/gpu/chromeos/video_decoder_pipeline_unittest.cc =================================================================== --- chromium-98.0.4758.80.orig/media/gpu/chromeos/video_decoder_pipeline_unittest.cc ++++++ system-pydeps.patch ++++++ --- /var/tmp/diff_new_pack.cEEplk/_old 2023-01-18 13:13:14.065450292 +0100 +++ /var/tmp/diff_new_pack.cEEplk/_new 2023-01-18 13:13:14.069450313 +0100 @@ -82,4 +82,47 @@ import optparse import sys +--- src/third_party/blink/renderer/bindings/scripts/check_generated_file_list.pydeps.old 2022-11-30 10:28:05.822183900 +0000 ++++ src/third_party/blink/renderer/bindings/scripts/check_generated_file_list.pydeps 2022-11-30 19:51:45.562760400 +0000 +@@ -1,28 +1,8 @@ + # Generated by running: + # build/print_python_deps.py --root third_party/blink/renderer/bindings/scripts --output third_party/blink/renderer/bindings/scripts/check_generated_file_list.pydeps third_party/blink/renderer/bindings/scripts/check_generated_file_list.py +-../../../../mako/mako/mako/__init__.py +-../../../../mako/mako/mako/_ast_util.py +-../../../../mako/mako/mako/ast.py +-../../../../mako/mako/mako/cache.py +-../../../../mako/mako/mako/codegen.py +-../../../../mako/mako/mako/compat.py +-../../../../mako/mako/mako/exceptions.py +-../../../../mako/mako/mako/ext/__init__.py +-../../../../mako/mako/mako/filters.py +-../../../../mako/mako/mako/lexer.py +-../../../../mako/mako/mako/parsetree.py +-../../../../mako/mako/mako/pygen.py +-../../../../mako/mako/mako/pyparser.py +-../../../../mako/mako/mako/runtime.py +-../../../../mako/mako/mako/template.py +-../../../../mako/mako/mako/util.py + ../../../../markupsafe/__init__.py + ../../../../markupsafe/_compat.py + ../../../../markupsafe/_native.py +-../../../../pyjson5/src/json5/__init__.py +-../../../../pyjson5/src/json5/lib.py +-../../../../pyjson5/src/json5/parser.py +-../../../../pyjson5/src/json5/version.py + ../../build/scripts/blinkbuild/__init__.py + ../../build/scripts/blinkbuild/name_style_converter.py + bind_gen/__init__.py +--- src/third_party/blink/renderer/bindings/scripts/validate_web_idl.pydeps.old 2022-11-30 10:28:05.822183900 +0000 ++++ src/third_party/blink/renderer/bindings/scripts/validate_web_idl.pydeps 2022-11-30 20:00:16.870556700 +0000 +@@ -1,9 +1,5 @@ + # Generated by running: + # build/print_python_deps.py --root third_party/blink/renderer/bindings/scripts --output third_party/blink/renderer/bindings/scripts/validate_web_idl.pydeps third_party/blink/renderer/bindings/scripts/validate_web_idl.py +-../../../../pyjson5/src/json5/__init__.py +-../../../../pyjson5/src/json5/lib.py +-../../../../pyjson5/src/json5/parser.py +-../../../../pyjson5/src/json5/version.py + ../../build/scripts/blinkbuild/__init__.py + ../../build/scripts/blinkbuild/name_style_converter.py + validate_web_idl.py