extra/chromium to 85.0.4183.83-1

This commit is contained in:
Kevin Mihelich 2020-08-25 19:28:31 +00:00
parent 73eecba72b
commit 92baab01d5
6 changed files with 54 additions and 209 deletions

View file

@ -15,10 +15,10 @@ buildarch=12
highmem=1
pkgname=chromium
pkgver=84.0.4147.135
pkgver=85.0.4183.83
pkgrel=1
_launcher_ver=6
_gcc_patchset=3
_gcc_patchset=2
pkgdesc="A web browser built for speed, simplicity, and security"
arch=('x86_64')
url="https://www.chromium.org/Home"
@ -38,21 +38,15 @@ install=chromium.install
source=(https://commondatastorage.googleapis.com/chromium-browser-official/$pkgname-$pkgver.tar.xz
chromium-launcher-$_launcher_ver.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver.tar.gz
https://github.com/stha09/chromium-patches/releases/download/chromium-${pkgver%%.*}-patchset-$_gcc_patchset/chromium-${pkgver%%.*}-patchset-$_gcc_patchset.tar.xz
remove-NotifyError-calls-and-just-send-a-normal-message.patch
avoid-calling-DeleteForCurrentDocument-from-destructor.patch
force-mp3-files-to-have-a-start-time-of-zero.patch
chromium-ffmpeg-4.3.patch
media-Set-allocation-limit-compatible-with-FFmpeg-4.3.patch
chromium-fix-vaapi-on-intel.patch
chromium-skia-harmony.patch
0001-crashpad-include-limits.patch
chromium-81.0.4044.122-Fix-sandbox-Aw-snap-for-syscalls-403-and-407.patch)
sha256sums=('dd41001596d0e17051ddcece3db6c0cdbe92fe23375d56fbcfba624a5f4996d8'
sha256sums=('2064aa4502b87c025f2233b59d94e9e3d1c00bfeaf891e1d973687de5740e73b'
'04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1'
'f77088dd59b170b767ba91c6b410abb778ff2e68553433b24124d398fa4d3ce7'
'3b10917f646f88ae988ca18be9cbef82025abb6a6e5cb00b77a11077192ce32c'
'4e41cb637e96bcef98c119ed052ba1aeab45fca5b89d65955583dab002de783e'
'abc3fad113408332c3b187b083bf33eba59eb5c87fa3ce859023984b5804623c'
'5390304b5f544868985ce00a3ec082d4ece2dacb1c73cdb35dd4facfea12449a'
'2194fe22b9e5ccdc4a86da4e3572214f670c561486671f57c90636fd3cbfa43e'
'0f041d655335cd2a4773ae7ca5e301a0ff12c6c53f57b7cf6651c268e0420a1c'
'e495f2477091557b15bff2c99831e0a3db64ea2ebde7dcb22857a6469c944b9a'
'771292942c0901092a402cc60ee883877a99fb804cb54d568c8c6c94565a48e1'
'df99f49ad58b70c9a3e1827d7e80b62e4363419334ed83373cf55b79c17b6f10'
@ -70,7 +64,7 @@ declare -gA _system_libs=(
[libdrm]=
[libjpeg]=libjpeg
[libpng]=libpng # https://crbug.com/752403#c10
[libvpx]=libvpx
#[libvpx]=libvpx
[libwebp]=libwebp
[libxml]=libxml2
[libxslt]=libxslt
@ -115,26 +109,12 @@ prepare() {
third_party/blink/renderer/core/xml/parser/xml_document_parser.cc \
third_party/libxml/chromium/*.cc
# https://chromium-review.googlesource.com/c/chromium/src/+/2223010
patch -Np1 -i ../remove-NotifyError-calls-and-just-send-a-normal-message.patch
# https://chromium-review.googlesource.com/c/chromium/src/+/2224737
patch -Np1 -i ../avoid-calling-DeleteForCurrentDocument-from-destructor.patch
# https://chromium-review.googlesource.com/c/chromium/src/+/2268221
patch -Np1 -i ../force-mp3-files-to-have-a-start-time-of-zero.patch
# https://crbug.com/1095962
patch -Np1 -i ../media-Set-allocation-limit-compatible-with-FFmpeg-4.3.patch
# Fixes for building with libstdc++ instead of libc++
patch -Np1 -i ../patches/chromium-84-AXObject-stl-iterator.patch
patch -Np1 -i ../patches/chromium-84-ListContainerHelper-include-cstring.patch
patch -Np1 -i ../patches/chromium-84-crashpad-include-cstring.patch
patch -Np1 -i ../patches/chromium-84-gcc-10-include-stddef.patch
patch -Np1 -i ../patches/chromium-84-gcc-10-webrtc-include-stddef.patch
patch -Np1 -i ../patches/chromium-84-gcc-DCHECK_EQ-unique_ptr.patch
patch -Np1 -i ../patches/chromium-84-std-vector-const.patch
# https://crbug.com/1095962
patch -Np1 -i ../chromium-ffmpeg-4.3.patch
patch -Np1 -i ../patches/chromium-85-NearbyShareEncryptedMetadataKey-include.patch
patch -Np1 -i ../patches/chromium-85-sim_hash-include.patch
# Patch from rpmfusion: chromium-freeworld
patch -Np1 -i ../chromium-fix-vaapi-on-intel.patch
@ -145,9 +125,6 @@ prepare() {
# Force script incompatible with Python 3 to use /usr/bin/python2
sed -i '1s|python$|&2|' third_party/dom_distiller_js/protoc_plugins/*.py
# Make xcbgen available to ui/gfx/x/gen_xproto.py running under Python 2
ln -s /usr/lib/python3.*/site-packages/xcbgen "$srcdir/"
mkdir -p third_party/node/linux/node-linux-x64/bin
ln -s /usr/bin/node third_party/node/linux/node-linux-x64/bin/
@ -178,9 +155,6 @@ build() {
export CCACHE_SLOPPINESS=time_macros
fi
# ui/gfx/x/gen_xproto.py needs xcbgen
export PYTHONPATH=$srcdir
export CC=clang
export CXX=clang++
export AR=ar

View file

@ -1,71 +0,0 @@
From 128869693a2519578896b41765df029d7adc4ae0 Mon Sep 17 00:00:00 2001
From: Yuzu Saijo <yuzus@chromium.org>
Date: Tue, 2 Jun 2020 04:51:11 +0000
Subject: [PATCH] [content] Avoid calling DeleteForCurrentDocument from
destructor
This CL removes the call to DeleteForCurrentDocument from the destructor
of ManifestManagerHost.
This intends to fix a crash which happens from time to time using
RenderDocumentHostUserData.
Change-Id: I1336fb62328dcb0cf9991499f399bf3665d29b75
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2224737
Reviewed-by: Rakina Zata Amni <rakina@chromium.org>
Reviewed-by: Alexander Timin <altimin@chromium.org>
Reviewed-by: Sreeja Kamishetty <sreejakshetty@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Commit-Queue: Yuzu Saijo <yuzus@chromium.org>
Cr-Commit-Position: refs/heads/master@{#774006}
---
content/browser/manifest/manifest_manager_host.cc | 7 +++++--
content/browser/manifest/manifest_manager_host.h | 2 ++
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/content/browser/manifest/manifest_manager_host.cc b/content/browser/manifest/manifest_manager_host.cc
index 3a2efba889a..1bd88d91edc 100644
--- a/content/browser/manifest/manifest_manager_host.cc
+++ b/content/browser/manifest/manifest_manager_host.cc
@@ -22,7 +22,7 @@ ManifestManagerHost::ManifestManagerHost(RenderFrameHost* render_frame_host)
}
ManifestManagerHost::~ManifestManagerHost() {
- OnConnectionError();
+ DispatchPendingCallbacks();
}
void ManifestManagerHost::BindObserver(
@@ -55,7 +55,7 @@ blink::mojom::ManifestManager& ManifestManagerHost::GetManifestManager() {
return *manifest_manager_;
}
-void ManifestManagerHost::OnConnectionError() {
+void ManifestManagerHost::DispatchPendingCallbacks() {
std::vector<GetManifestCallback> callbacks;
for (CallbackMap::iterator it(&callbacks_); !it.IsAtEnd(); it.Advance()) {
callbacks.push_back(std::move(*it.GetCurrentValue()));
@@ -63,7 +63,10 @@ void ManifestManagerHost::OnConnectionError() {
callbacks_.Clear();
for (auto& callback : callbacks)
std::move(callback).Run(GURL(), blink::Manifest());
+}
+void ManifestManagerHost::OnConnectionError() {
+ DispatchPendingCallbacks();
if (GetForCurrentDocument(manifest_manager_frame_)) {
DeleteForCurrentDocument(manifest_manager_frame_);
}
diff --git a/content/browser/manifest/manifest_manager_host.h b/content/browser/manifest/manifest_manager_host.h
index 96951ae30bc..f706c20bdb8 100644
--- a/content/browser/manifest/manifest_manager_host.h
+++ b/content/browser/manifest/manifest_manager_host.h
@@ -55,6 +55,8 @@ class ManifestManagerHost
using CallbackMap = base::IDMap<std::unique_ptr<GetManifestCallback>>;
blink::mojom::ManifestManager& GetManifestManager();
+
+ void DispatchPendingCallbacks();
void OnConnectionError();
void OnRequestManifestResponse(int request_id,

View file

@ -1,21 +0,0 @@
diff --git a/media/base/media.cc b/media/base/media.cc
index c282ee49a03..a298b40c79b 100644
--- a/media/base/media.cc
+++ b/media/base/media.cc
@@ -14,6 +14,7 @@
#include "third_party/libyuv/include/libyuv.h"
#if BUILDFLAG(ENABLE_FFMPEG)
+#include <limits>
#include "third_party/ffmpeg/ffmpeg_features.h" // nogncheck
extern "C" {
#include <libavutil/cpu.h>
@@ -41,7 +42,7 @@ class MediaInitializer {
#if BUILDFLAG(USE_ALLOCATOR_SHIM)
// Remove allocation limit from ffmpeg, so calls go down to shim layer.
- av_max_alloc(0);
+ av_max_alloc(std::numeric_limits<size_t>::max());
#endif // BUILDFLAG(USE_ALLOCATOR_SHIM)
#endif // BUILDFLAG(ENABLE_FFMPEG)

View file

@ -1,38 +0,0 @@
From 192fc3899f76e9487d77895f31df8d2d13bf9619 Mon Sep 17 00:00:00 2001
From: Dale Curtis <dalecurtis@chromium.org>
Date: Fri, 26 Jun 2020 01:10:55 +0000
Subject: [PATCH] Force mp3 files to have a start time of zero.
This will allow us to remove our custom patch which breaks upstream
ffmpeg functionality for unknown reasons.
R=sandersd
Fixed: 1062037
Change-Id: I253011843dee4dd6a8c958b14990ad836a9f1dca
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2268221
Auto-Submit: Dale Curtis <dalecurtis@chromium.org>
Reviewed-by: Dan Sanders <sandersd@chromium.org>
Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#782792}
---
media/filters/ffmpeg_demuxer.cc | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/media/filters/ffmpeg_demuxer.cc b/media/filters/ffmpeg_demuxer.cc
index 01266e1a072..a7ed542b5fc 100644
--- a/media/filters/ffmpeg_demuxer.cc
+++ b/media/filters/ffmpeg_demuxer.cc
@@ -1522,6 +1522,12 @@ void FFmpegDemuxer::OnFindStreamInfoDone(int result) {
if (glue_->container() == container_names::CONTAINER_AVI)
format_context->flags |= AVFMT_FLAG_GENPTS;
+ // FFmpeg will incorrectly adjust the start time of MP3 files into the future
+ // based on discard samples. We were unable to fix this upstream without
+ // breaking ffmpeg functionality. https://crbug.com/1062037
+ if (glue_->container() == container_names::CONTAINER_MP3)
+ start_time_ = base::TimeDelta();
+
// For testing purposes, don't overwrite the timeline offset if set already.
if (timeline_offset_.is_null()) {
timeline_offset_ =

View file

@ -0,0 +1,43 @@
From 7f4c7ff6b0f0e74338c885b0d5e5ef80fed597c3 Mon Sep 17 00:00:00 2001
From: Dan Sanders <sandersd@chromium.org>
Date: Tue, 11 Aug 2020 20:38:03 +0000
Subject: [PATCH] [media] Set allocation limit compatible with FFmpeg 4.3
Previously we set the limit to zero, meaning no limit, but FFmpeg 4.3
will not allocate at all with that setting.
Changed to std::numeric_limits<size_t>::max().
Bug: 1095962
Change-Id: I96820c21f794f2814e955ee75ff22dfd31804c29
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2349405
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Commit-Queue: Dan Sanders <sandersd@chromium.org>
Cr-Commit-Position: refs/heads/master@{#796966}
---
media/base/media.cc | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/media/base/media.cc b/media/base/media.cc
index c282ee49a03..11e99c238ba 100644
--- a/media/base/media.cc
+++ b/media/base/media.cc
@@ -4,6 +4,9 @@
#include "media/base/media.h"
+#include <stdint.h>
+#include <limits>
+
#include "base/allocator/buildflags.h"
#include "base/command_line.h"
#include "base/macros.h"
@@ -41,7 +44,7 @@ class MediaInitializer {
#if BUILDFLAG(USE_ALLOCATOR_SHIM)
// Remove allocation limit from ffmpeg, so calls go down to shim layer.
- av_max_alloc(0);
+ av_max_alloc(std::numeric_limits<size_t>::max());
#endif // BUILDFLAG(USE_ALLOCATOR_SHIM)
#endif // BUILDFLAG(ENABLE_FFMPEG)

View file

@ -1,42 +0,0 @@
From 3bfec15358b788a2b7e1beefaa177ba84a6da328 Mon Sep 17 00:00:00 2001
From: Ted Meyer <tmathmeyer@chromium.org>
Date: Mon, 1 Jun 2020 19:31:18 +0000
Subject: [PATCH] Remove NotifyError calls and just send a normal message
instead
rewrote the TODO as well.
Bug: 1088055
Change-Id: If83ceeb3a786a1813e41bd3ac6c7309791e92400
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2223010
Auto-Submit: Ted Meyer <tmathmeyer@chromium.org>
Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#773776}
---
media/filters/decoder_selector.cc | 12 +++++-------
1 file changed, 5 insertions(+), 7 deletions(-)
diff --git a/media/filters/decoder_selector.cc b/media/filters/decoder_selector.cc
index bb06378b92d..9f510bb578c 100644
--- a/media/filters/decoder_selector.cc
+++ b/media/filters/decoder_selector.cc
@@ -165,13 +165,11 @@ void DecoderSelector<StreamType>::OnDecoderInitializeDone(Status status) {
DCHECK(task_runner_->BelongsToCurrentThread());
if (!status.is_ok()) {
- // TODO(tmathmeyer) this might be noisy in media log. Consider batching
- // all failures as causes to a single Status object and only surfacing it if
- // decoder selection fails entirely.
- media_log_->NotifyError(
- Status(StatusCode::kDecoderFailedInitialization)
- .WithData("Decoder name", decoder_->GetDisplayName())
- .AddCause(std::move(status)));
+ // TODO(tmathmeyer) this was too noisy in media log. Batch all the logs
+ // together and then send them as an informational notice instead of
+ // using NotifyError.
+ MEDIA_LOG(INFO, media_log_)
+ << "Failed to initialize " << decoder_->GetDisplayName();
// Try the next decoder on the list.
decoder_.reset();