extra/chromium to 100.0.4896.60-1

This commit is contained in:
David Beauchamp 2022-03-29 18:11:41 -04:00
parent 305b3457c6
commit a553156d0d
4 changed files with 4 additions and 185 deletions

View file

@ -15,10 +15,10 @@
highmem=1
pkgname=chromium
pkgver=99.0.4844.84
pkgver=100.0.4896.60
pkgrel=1
_launcher_ver=8
_gcc_patchset=3
_gcc_patchset=4
pkgdesc="A web browser built for speed, simplicity, and security"
arch=('x86_64')
url="https://www.chromium.org/Home"
@ -36,22 +36,16 @@ options=('!lto') # Chromium adds its own flags for ThinLTO
source=(https://commondatastorage.googleapis.com/chromium-browser-official/$pkgname-$pkgver.tar.xz
https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver/chromium-launcher-$_launcher_ver.tar.gz
https://github.com/stha09/chromium-patches/releases/download/chromium-${pkgver%%.*}-patchset-$_gcc_patchset/chromium-${pkgver%%.*}-patchset-$_gcc_patchset.tar.xz
fix-build-break-with-system-libdrm.patch
sandbox-build-if-glibc-2.34-dynamic-stack-size-is-en.patch
webcodecs-stop-using-AudioOpusEncoder.patch
use-FT_Done_MM_Var-in-CFX_Font-AdjustMMParams.patch
sql-make-VirtualCursor-standard-layout-type.patch
use-oauth2-client-switches-as-default.patch
0001-widevine-support-for-arm.patch
0002-Run-blink-bindings-generation-single-threaded.patch
0003-Fix-eu-strip-build-for-newer-GCC.patch)
sha256sums=('20ec184ed34bdc7e660ccf6c007b2db37007de423b3a5a51698a96aa29527515'
sha256sums=('0e5ea5f3061ad090cf6bd57ca037496d95ea8956de021aff902f7d0ded7bffdc'
'213e50f48b67feb4441078d50b0fd431df34323be15be97c55302d3fdac4483a'
'9cd2570e92e9bfeff3faf0d5b56334535cb2313f99ab0d9019b74d18ae1c7d0a'
'edf4d973ff197409d319bb6fbbaa529e53bc62347d26b0733c45a116a1b23f37'
'f910be9370c880de6e1d61cc30383c069e421d7acf406166e4fbfad324fc7d61'
'a6120e7d4eb5e131b87b6ab3b922e0c6cd78e15501e54cfb2019875173688d80'
'064daaa2b9d95b96ec04d8ddebf4af441f92263d123365b58fe73966866080af'
'34bcb151c0bc51ada5aa7beda6e87356e0eaafa83a621e11e5803717adc39ffc'
'b94b2e88f63cfb7087486508b8139599c89f96d7a4181c61fec4b4e250ca327a'
'e393174d7695d0bafed69e868c5fbfecf07aa6969f3b64596d0bae8b067e1711'
'1518b4e3a89594f940f023da84ac3c222efb6f486596c44fe2b92419f15327ab'
@ -126,10 +120,7 @@ prepare() {
patch -Np1 -i ../use-oauth2-client-switches-as-default.patch
# Upstream fixes
patch -Np1 -i ../fix-build-break-with-system-libdrm.patch
patch -Np1 -i ../sandbox-build-if-glibc-2.34-dynamic-stack-size-is-en.patch
patch -Np1 -i ../webcodecs-stop-using-AudioOpusEncoder.patch
patch -Np1 -d third_party/pdfium <../use-FT_Done_MM_Var-in-CFX_Font-AdjustMMParams.patch
# https://chromium-review.googlesource.com/c/chromium/src/+/2862724
patch -Np1 -i ../sql-make-VirtualCursor-standard-layout-type.patch

View file

@ -1,62 +0,0 @@
From 5b287e0be8d8d8475ec6ef81b16eaa61e19db078 Mon Sep 17 00:00:00 2001
From: "Steinar H. Gunderson" <sesse@chromium.org>
Date: Tue, 25 Jan 2022 19:14:53 +0000
Subject: [PATCH] Fix build break with system libdrm.
This patch is submitted on behalf of Andres Salomon
<dilinger@queued.net> (on Cc). Also adding him to src/AUTHORS
per policy, as he has signed the CLA.
Original patch:
https://salsa.debian.org/dilinger/chromium/-/commit/2333c2fb985ac1ef3d7331776a7833d965c63302
Change-Id: I18bd60e2e80f2b9181e74ee7972c3f457ab33b10
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3401704
Reviewed-by: Andres Calderon Jaramillo <andrescj@chromium.org>
Commit-Queue: Steinar H Gunderson <sesse@chromium.org>
Auto-Submit: Steinar H Gunderson <sesse@chromium.org>
Cr-Commit-Position: refs/heads/main@{#963119}
---
AUTHORS | 1 +
media/gpu/chromeos/BUILD.gn | 1 +
media/gpu/chromeos/video_decoder_pipeline.cc | 2 +-
3 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/AUTHORS b/AUTHORS
index 0eba3de5065..50edd3f6b38 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -93,6 +93,7 @@ Andreas Papacharalampous <andreas@apap04.com>
Andrei Borza <andrei.borza@gmail.com>
Andrei Parvu <andrei.prv@gmail.com>
Andrei Parvu <parvu@adobe.com>
+Andres Salomon <dilinger@queued.net>
Andreu Botella <andreu@andreubotella.com>
Andrew Boyarshin <andrew.boyarshin@gmail.com>
Andrew Brampton <me@bramp.net>
diff --git a/media/gpu/chromeos/BUILD.gn b/media/gpu/chromeos/BUILD.gn
index 7cb4c3ea39a..6fe21c15ecc 100644
--- a/media/gpu/chromeos/BUILD.gn
+++ b/media/gpu/chromeos/BUILD.gn
@@ -25,6 +25,7 @@ source_set("chromeos") {
deps = [
"//base",
+ "//build/config/linux/libdrm",
"//media",
"//media/gpu:buildflags",
"//media/gpu:command_buffer_helper",
diff --git a/media/gpu/chromeos/video_decoder_pipeline.cc b/media/gpu/chromeos/video_decoder_pipeline.cc
index d2f154ea0d8..416b9434a8d 100644
--- a/media/gpu/chromeos/video_decoder_pipeline.cc
+++ b/media/gpu/chromeos/video_decoder_pipeline.cc
@@ -28,8 +28,8 @@
#include "third_party/abseil-cpp/absl/types/optional.h"
#if BUILDFLAG(USE_VAAPI)
+#include <drm_fourcc.h>
#include "media/gpu/vaapi/vaapi_video_decoder.h"
-#include "third_party/libdrm/src/include/drm/drm_fourcc.h"
#elif BUILDFLAG(USE_V4L2_CODEC)
#include "media/gpu/v4l2/v4l2_video_decoder.h"
#else

View file

@ -1,39 +0,0 @@
From 28ac6a15411d01301e171b8a8b0019abd57589b9 Mon Sep 17 00:00:00 2001
From: Stephan Hartmann <stha09@googlemail.com>
Date: Mon, 7 Feb 2022 20:09:57 +0000
Subject: [PATCH] sandbox: build if glibc 2.34+ dynamic stack size is enabled
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Compilation of sandbox fails when using dynamic stack size in glibc
2.34 or newer. This is because the value is not a literal anymore but
obtained through sysconf.
To avoid this, use memset to put zeros in the buffer.
Change-Id: Ia479e0f799b77a10a00197aaaa0500e62546f458
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3436947
Reviewed-by: Jorge Lucangeli Obes <jorgelo@chromium.org>
Commit-Queue: José Dapena Paz <jdapena@igalia.com>
Cr-Commit-Position: refs/heads/main@{#967943}
---
sandbox/linux/services/credentials.cc | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/sandbox/linux/services/credentials.cc b/sandbox/linux/services/credentials.cc
index ca6b5954798..c933eafd163 100644
--- a/sandbox/linux/services/credentials.cc
+++ b/sandbox/linux/services/credentials.cc
@@ -100,7 +100,10 @@ bool ChrootToSafeEmptyDir() {
// TODO(crbug.com/1247458) Broken in MSan builds after LLVM f1bb30a4956f.
clone_flags |= CLONE_VM | CLONE_VFORK | CLONE_SETTLS;
- char tls_buf[PTHREAD_STACK_MIN] = {0};
+ // PTHREAD_STACK_MIN can be dynamic in glibc2.34+, so it is not possible to
+ // zeroify tls_buf assigning { 0 }
+ char tls_buf[PTHREAD_STACK_MIN];
+ memset(tls_buf, 0, PTHREAD_STACK_MIN);
tls = tls_buf;
#endif

View file

@ -1,71 +0,0 @@
From ffeb67faf715475f6e463d65c368f556780adf19 Mon Sep 17 00:00:00 2001
From: Lei Zhang <thestig@chromium.org>
Date: Mon, 31 Jan 2022 22:42:35 +0000
Subject: [PATCH] Use FT_Done_MM_Var() in CFX_Font::AdjustMMParams() when
possible.
When FreeType has FT_Done_MM_Var(), use that to free memory in
CFX_Font::AdjustMMParams() to avoid mismatched alloc/free functions.
Bug: pdfium:1400
Change-Id: I044540893103921fc64cdd53fcd628cfebf2c9db
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/90130
Reviewed-by: Nigi <nigi@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
---
core/fxge/cfx_font.cpp | 28 ++++++++++++++++++++++++++--
1 file changed, 26 insertions(+), 2 deletions(-)
diff --git a/core/fxge/cfx_font.cpp b/core/fxge/cfx_font.cpp
index c08fe9608..8b3a72700 100644
--- a/core/fxge/cfx_font.cpp
+++ b/core/fxge/cfx_font.cpp
@@ -44,6 +44,30 @@ struct OUTLINE_PARAMS {
float m_CoordUnit;
};
+// TODO(crbug.com/pdfium/1400): When FT_Done_MM_Var() is more likely to be
+// available to all users in the future, remove FreeMMVar() and use
+// FT_Done_MM_Var() directly.
+//
+// Use weak symbols to check if FT_Done_MM_Var() is available at runtime.
+#if !BUILDFLAG(IS_WIN)
+extern "C" __attribute__((weak)) decltype(FT_Done_MM_Var) FT_Done_MM_Var;
+#endif
+
+void FreeMMVar(FXFT_FaceRec* rec, FXFT_MM_VarPtr variation_desc) {
+#if BUILDFLAG(IS_WIN)
+ // Assume `use_system_freetype` GN var is never set on Windows.
+ constexpr bool has_ft_done_mm_var_func = true;
+#else
+ static const bool has_ft_done_mm_var_func = !!FT_Done_MM_Var;
+#endif
+ if (has_ft_done_mm_var_func) {
+ FT_Done_MM_Var(CFX_GEModule::Get()->GetFontMgr()->GetFTLibrary(),
+ variation_desc);
+ } else {
+ FXFT_Free(rec, variation_desc);
+ }
+}
+
FX_RECT FXRectFromFTPos(FT_Pos left, FT_Pos top, FT_Pos right, FT_Pos bottom) {
return FX_RECT(pdfium::base::checked_cast<int32_t>(left),
pdfium::base::checked_cast<int32_t>(top),
@@ -645,7 +669,7 @@ void CFX_Font::AdjustMMParams(int glyph_index,
FT_Pos max_width = FXFT_Get_Glyph_HoriAdvance(m_Face->GetRec()) * 1000 /
FXFT_Get_Face_UnitsPerEM(m_Face->GetRec());
if (max_width == min_width) {
- FXFT_Free(m_Face->GetRec(), pMasters);
+ FreeMMVar(m_Face->GetRec(), pMasters);
return;
}
FT_Pos param = min_param + (max_param - min_param) *
@@ -653,7 +677,7 @@ void CFX_Font::AdjustMMParams(int glyph_index,
(max_width - min_width);
coords[1] = param;
}
- FXFT_Free(m_Face->GetRec(), pMasters);
+ FreeMMVar(m_Face->GetRec(), pMasters);
FT_Set_MM_Design_Coordinates(m_Face->GetRec(), 2, coords);
}