From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 7E4E2139337 for ; Mon, 26 Jul 2021 21:17:19 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id C1852E089C; Mon, 26 Jul 2021 21:17:18 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 9844CE089C for ; Mon, 26 Jul 2021 21:17:18 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 7E088342E0E for ; Mon, 26 Jul 2021 21:17:17 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id DEF72581 for ; Mon, 26 Jul 2021 21:17:15 +0000 (UTC) From: "Stephan Hartmann" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Stephan Hartmann" Message-ID: <1627334228.0c8827bdd3d8723d0d84d79787e6c9f241306385.sultan@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: www-client/chromium/files/, www-client/chromium/ X-VCS-Repository: repo/gentoo X-VCS-Files: www-client/chromium/Manifest www-client/chromium/chromium-93.0.4557.4.ebuild www-client/chromium/chromium-93.0.4577.8.ebuild www-client/chromium/files/chromium-93-EnumTable-crash.patch X-VCS-Directories: www-client/chromium/ www-client/chromium/files/ X-VCS-Committer: sultan X-VCS-Committer-Name: Stephan Hartmann X-VCS-Revision: 0c8827bdd3d8723d0d84d79787e6c9f241306385 X-VCS-Branch: master Date: Mon, 26 Jul 2021 21:17:15 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 49be4fa6-92b3-4811-b275-b0211c14d6b5 X-Archives-Hash: 8a62de2918636342d7fdf84be8531bee commit: 0c8827bdd3d8723d0d84d79787e6c9f241306385 Author: Stephan Hartmann gentoo org> AuthorDate: Mon Jul 26 21:16:01 2021 +0000 Commit: Stephan Hartmann gentoo org> CommitDate: Mon Jul 26 21:17:08 2021 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0c8827bd www-client/chromium: dev channel bump to 93.0.4577.8 Bug: https://bugs.gentoo.org/803260 Bug: https://bugs.gentoo.org/769989 Package-Manager: Portage-3.0.20, Repoman-3.0.2 Signed-off-by: Stephan Hartmann gentoo.org> www-client/chromium/Manifest | 4 +- ...0.4557.4.ebuild => chromium-93.0.4577.8.ebuild} | 21 ++---- .../files/chromium-93-EnumTable-crash.patch | 79 ++++++++++++++++++++++ 3 files changed, 88 insertions(+), 16 deletions(-) diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest index a238f1b3018..17bdadfd498 100644 --- a/www-client/chromium/Manifest +++ b/www-client/chromium/Manifest @@ -5,7 +5,7 @@ DIST chromium-92-glibc-2.33-patch.tar.xz 12636 BLAKE2B 0621d2135c1a0864374010c36 DIST chromium-92-patchset-7.tar.xz 4004 BLAKE2B 8587663a072eb08abacbc2e54924855f29efefdbec46acf5cb8b0cc40b816b96ba7694c4ab1abe997572a6dbecf94ea27f368a7337263adfff44f2b4b042d862 SHA512 65c8267ab0921719c71d4b03a4315bbb1ceec35ce4794de9dcc6099b2c349baf4782b67316ebb8c9db233630b7fc89fa0baf719f9f0f41eb39972cdeb437e612 DIST chromium-92-ppc64le-1.tar.xz 30416 BLAKE2B e953e3ba1ac0ff4bae437328eb1c52fb3863007ff92db91c6858c8c5f7b4c5c39fb8bf6898c3385c7faa82666f1a18aae7fcb5379b9199e58c5c0526fbd9dbee SHA512 b5a20076a34705c53c56d7763189ebfd860a456ca544a7f0c9ce30c877be92270ea724f1bebb9b597b301def27dde0a672b0c30e16e6abbf958cecfd60b07ec5 DIST chromium-92.0.4515.107.tar.xz 957809240 BLAKE2B 61f34c6de424dbc0bed4a3f6ede42c936389e3280ffccc6db8750674fc512257120fad4006bf5e31701cfebf9cd12df96bb2936296293312317dee85748bf773 SHA512 8814a3371e38836cee02178fa06bee612d00efe561791278351ef5312f5225742d416043fe6e25e9e353ae3d82dbd5ef57c9b1f115423da6537288e9aece779a -DIST chromium-93-patchset-5.tar.xz 4404 BLAKE2B f347a66c5767bb03dd6a0feda433f51f5110e0429c6f55494000bd1a61a4f3b6a218e7f12ce91a02adae94ee0a85d0aceb12aef5a0537e9362f23817edb662c0 SHA512 39d3bd5ad51e33d5d82a42d5289ab137bdb3280e4d2d647fce86eb59d14a01e9f31531cf82ba9055168c18d1fb96e3013e2d40dc89b30c725c89241d34b7b25d -DIST chromium-93.0.4557.4.tar.xz 1034639148 BLAKE2B d515e5be84f63bd21e757750963188390bc1b888aeb50a1b7767805784e6efce1c89f058fe5bcdf73a8790677a2b76cd3f01cc6df1b245996924ae46e91911d6 SHA512 b5b214d639becdfdb4a6bd2ee04c9556ee4eca0e436ed6580c8e6d9e5a37476ae1fa208eef741aa8d8535f30f1e751041aaf02fff57dbd685341d7b5866a81cc +DIST chromium-93-patchset-6.tar.xz 6796 BLAKE2B 2688c68becac1187668b459f9827ffca79de6c7ee64299dff20f91cb774af676ec3d95d809b4fc5f7bd663c3b8c904a46ac9cd3ec70a5ce248456dcd48834932 SHA512 eaf0d2bc29c53c7021ccded9c14463bbde2887926c069154c0126ee1bf513bf41a38eeb3dc21023a2e9637ce3e1e541a3b2a79a990bb8becae0da0a04e57c76a +DIST chromium-93.0.4577.8.tar.xz 1041484708 BLAKE2B 7978b7771c9e964efc28e691fc16e7b0679372ef86d7477327f40e8f7682638606e88711cce438f12616011e1e3bc4ad2d0b9be741a409cc8001a78f0632c0a7 SHA512 8940dee8186244bca134b83a452a7d2668d2a382ef32034cf4b7e8c781d709c679418e4fc97f744f14d10f8bdf0d9104eaadbd32efd0dce43d600b4cf5b933e4 DIST highway-0.12.1.tar.gz 1480579 BLAKE2B 2889f96e33ae4411b14dae2229d86b0581f2044f50d6bb829a83417f0d67f0c9a8c03d552d09a985231ea11e88497fa405efcb85d158b5734b477bec5764a1eb SHA512 d14aeffc80739a5993177fb190ac03998d495004e9c54126c0e0b174c28be52a3f3fe581d8a08db67c34bd00045223d1850e7b384a2e7fe37a8150d7908004cb DIST setuptools-44.1.0.zip 858569 BLAKE2B f59f154e121502a731e51294ccd293d60ffccadacf51e23b53bf7ceba38858948b86783238061136c827ac3373ea7ea8e6253d4bb53f3f1dd69284568ec65a68 SHA512 4dfb0f42d334b835758e865a26ecd1e725711fa2b9c38ddc273b8b3849fba04527bc97436d11ba1e98f1a42922aa0f0b9032e32998273c705fac6e10735eacbf diff --git a/www-client/chromium/chromium-93.0.4557.4.ebuild b/www-client/chromium/chromium-93.0.4577.8.ebuild similarity index 98% rename from www-client/chromium/chromium-93.0.4557.4.ebuild rename to www-client/chromium/chromium-93.0.4577.8.ebuild index 206632b872e..8bcd0f7a812 100644 --- a/www-client/chromium/chromium-93.0.4557.4.ebuild +++ b/www-client/chromium/chromium-93.0.4577.8.ebuild @@ -13,10 +13,11 @@ inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-util DESCRIPTION="Open-source version of Google Chrome web browser" HOMEPAGE="https://chromium.org/" -PATCHSET="5" +PATCHSET="6" PATCHSET_NAME="chromium-$(ver_cut 1)-patchset-${PATCHSET}" SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz https://github.com/stha09/chromium-patches/releases/download/${PATCHSET_NAME}/${PATCHSET_NAME}.tar.xz + https://dev.gentoo.org/~sultan/distfiles/www-client/${PN}/${PN}-92-glibc-2.33-patch.tar.xz arm64? ( https://github.com/google/highway/archive/refs/tags/0.12.1.tar.gz -> highway-0.12.1.tar.gz )" LICENSE="BSD" @@ -55,7 +56,7 @@ COMMON_DEPEND=" >=dev-libs/nss-3.26:= >=media-libs/alsa-lib-1.0.19:= media-libs/fontconfig:= - media-libs/freetype:= + >=media-libs/freetype-2.11.0:= >=media-libs/harfbuzz-2.4.0:0=[icu(-)] media-libs/libjpeg-turbo:= media-libs/libpng:= @@ -232,22 +233,14 @@ src_prepare() { local PATCHES=( "${WORKDIR}/patches" - "${FILESDIR}/chromium-92-EnumTable-crash.patch" + "${WORKDIR}/sandbox-patches/chromium-syscall_broker.patch" + "${WORKDIR}/sandbox-patches/chromium-fstatat-crash.patch" + "${FILESDIR}/chromium-92-GetUsableSize-nullptr.patch" + "${FILESDIR}/chromium-93-EnumTable-crash.patch" "${FILESDIR}/chromium-93-InkDropHost-crash.patch" "${FILESDIR}/chromium-shim_headers.patch" ) - # seccomp sandbox is broken if compiled against >=sys-libs/glibc-2.33, bug #769989 - if has_version -d ">=sys-libs/glibc-2.33"; then - ewarn "Adding experimental glibc-2.33 sandbox patch. Seccomp sandbox might" - ewarn "still not work correctly. In case of issues, try to disable seccomp" - ewarn "sandbox by adding --disable-seccomp-filter-sandbox to CHROMIUM_FLAGS" - ewarn "in /etc/chromium/default." - PATCHES+=( - "${FILESDIR}/chromium-glibc-2.33.patch" - ) - fi - default mkdir -p third_party/node/linux/node-linux-x64/bin || die diff --git a/www-client/chromium/files/chromium-93-EnumTable-crash.patch b/www-client/chromium/files/chromium-93-EnumTable-crash.patch new file mode 100644 index 00000000000..a5c2defa0ae --- /dev/null +++ b/www-client/chromium/files/chromium-93-EnumTable-crash.patch @@ -0,0 +1,79 @@ +diff --git a/components/cast_channel/enum_table.h b/components/cast_channel/enum_table.h +index a63ae86..83ada65 100644 +--- a/components/cast_channel/enum_table.h ++++ b/components/cast_channel/enum_table.h +@@ -8,6 +8,7 @@ + #include + #include + #include ++#include + + #include "base/check_op.h" + #include "base/macros.h" +@@ -213,7 +214,7 @@ class + + template + friend class EnumTable; +- DISALLOW_COPY_AND_ASSIGN(GenericEnumTableEntry); ++ DISALLOW_ASSIGN(GenericEnumTableEntry); + }; + + // Yes, these constructors really needs to be inlined. Even though they look +@@ -251,8 +252,7 @@ class EnumTable { + // Constructor for regular entries. + constexpr Entry(E value, base::StringPiece str) + : GenericEnumTableEntry(static_cast(value), str) {} +- +- DISALLOW_COPY_AND_ASSIGN(Entry); ++ DISALLOW_ASSIGN(Entry); + }; + + static_assert(sizeof(E) <= sizeof(int32_t), +@@ -307,15 +307,14 @@ class EnumTable { + if (is_sorted_) { + const std::size_t index = static_cast(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(data_.begin()), +- data_.size(), static_cast(value)); ++ &data_[0], data_.size(), static_cast(value)); + } + + // This overload of GetString is designed for cases where the argument is a +@@ -343,8 +342,7 @@ class EnumTable { + // enum value directly. + absl::optional GetEnum(base::StringPiece str) const { + auto* entry = GenericEnumTableEntry::FindByString( +- reinterpret_cast(data_.begin()), +- data_.size(), str); ++ &data_[0], data_.size(), str); + return entry ? static_cast(entry->value) : absl::optional(); + } + +@@ -359,7 +357,7 @@ class EnumTable { + // Align the data on a cache line boundary. + alignas(64) + #endif +- std::initializer_list data_; ++ const std::vector data_; + bool is_sorted_; + + constexpr EnumTable(std::initializer_list data, bool is_sorted) +@@ -371,8 +369,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()))