chromium-browser-beta 83.0.4103.14-1 (x86_64;znver1) 2020-11466
1

Status rejected
Submitter nobodydead [@T] gmail.com
Platform rolling
Repository main
URL https://abf.openmandriva.org/build_lists/758494
Packages
chromedriver-beta-83.0.4103.14-1.x86_64.binary
chromium-browser-beta-83.0.4103.14-1.x86_64.source
chromium-browser-beta-83.0.4103.14-1.x86_64.binary
chromedriver-beta-83.0.4103.14-1.znver1.binary
chromium-browser-beta-83.0.4103.14-1.znver1.binary
chromium-browser-beta-83.0.4103.14-1.znver1.source
Build Date 2020-04-17 07:31:25 +0000 UTC
Last Updated 2020-04-21 01:44:59.671613618 +0000 UTC
$ git show --format=fuller --patch-with-stat --summary ab5b95bac155d2976e4b9c144fc12397df8cd9fe

commit ab5b95bac155d2976e4b9c144fc12397df8cd9fe
Author:     Bernhard Rosenkränzer <bero@lindev.ch>
AuthorDate: Fri Apr 17 00:27:22 2020 +0200
Commit:     Bernhard Rosenkränzer <bero@lindev.ch>
CommitDate: Fri Apr 17 00:27:22 2020 +0200

    83.0.4103.14
---
 .abf.yml                                           |   1 +
 ....0.3538.67-disable-fontconfig-cache-magic.patch |  13 --
 chromium-75.0.3770.80-vaapi-i686-fpermissive.patch |  23 ---
 ...m-75.0.3770.80-vaapi-libva1-compatibility.patch |  14 --
 chromium-80-buildfix.patch                         |  11 --
 chromium-80-libstdc++10.patch                      |  28 ---
 chromium-80-unbundle-libxml.patch                  | 126 --------------
 chromium-81-compile.patch                          |  79 ---------
 chromium-81-dont-pretend-vaapi-is-broken.patch     |  26 +++
 chromium-81-enable-gpu-features.patch              |  34 ++++
 ...ra-media.patch => chromium-81-extra-media.patch | 107 +++++-------
 ...e-zlib.patch => chromium-81-unbundle-zlib.patch |   6 +-
 chromium-83-compile.patch                          | 187 +++++++++++++++++++++
 chromium-83-disable-fontconfig-cache-magic.patch   |  13 ++
 ....3683.75-norar.patch => chromium-83-norar.patch |  24 +--
 chromium-browser-beta.spec                         | 101 +++++++----
 chromium-drirc-disable-10bpc-color-configs.conf    |  21 +++
 chromium-skia-harmony.patch                        |  14 ++
 chromium-system-icu.patch                          |  28 +++
 enable-vaapi.patch                                 |  90 ----------
 vdpau-support.patch                                |  78 +++++++++
 21 files changed, 523 insertions(+), 501 deletions(-)
 delete mode 100644 chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch
 delete mode 100644 chromium-75.0.3770.80-vaapi-i686-fpermissive.patch
 delete mode 100644 chromium-75.0.3770.80-vaapi-libva1-compatibility.patch
 delete mode 100644 chromium-80-buildfix.patch
 delete mode 100644 chromium-80-libstdc++10.patch
 delete mode 100644 chromium-80-unbundle-libxml.patch
 delete mode 100644 chromium-81-compile.patch
 create mode 100644 chromium-81-dont-pretend-vaapi-is-broken.patch
 create mode 100644 chromium-81-enable-gpu-features.patch
 rename chromium-69-extra-media.patch => chromium-81-extra-media.patch (68%)
 rename chromium-78.0.3904.70-unbundle-zlib.patch => chromium-81-unbundle-zlib.patch (51%)
 create mode 100644 chromium-83-compile.patch
 create mode 100644 chromium-83-disable-fontconfig-cache-magic.patch
 rename chromium-73.0.3683.75-norar.patch => chromium-83-norar.patch (60%)
 create mode 100644 chromium-drirc-disable-10bpc-color-configs.conf
 create mode 100644 chromium-skia-harmony.patch
 delete mode 100644 enable-vaapi.patch
 create mode 100644 vdpau-support.patch

diff --git a/.abf.yml b/.abf.yml
index 4b52134..2e09a2d 100644
--- a/.abf.yml
+++ b/.abf.yml
@@ -1 +1,2 @@
 sources:
+  chromium-83.0.4103.14.tar.xz: ad0908a7ff49be5723ccb955ad8b2251eedc16b2
diff --git a/chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch b/chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch
deleted file mode 100644
index 7ec85cb..0000000
--- a/chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -up chromium-81.0.4044.9/base/test/BUILD.gn.10~ chromium-81.0.4044.9/base/test/BUILD.gn
---- chromium-81.0.4044.9/base/test/BUILD.gn.10~	2020-02-09 22:26:35.210899010 +0100
-+++ chromium-81.0.4044.9/base/test/BUILD.gn	2020-02-09 22:30:50.403882299 +0100
-@@ -245,9 +245,6 @@ static_library("test_support") {
-   if (is_linux) {
-     public_deps += [ ":fontconfig_util_linux" ]
-     data_deps = [ "//third_party/test_fonts" ]
--    if (current_toolchain == host_toolchain) {
--      data_deps += [ ":do_generate_fontconfig_caches" ]
--    }
-   }
- 
-   if (is_ios) {
diff --git a/chromium-75.0.3770.80-vaapi-i686-fpermissive.patch b/chromium-75.0.3770.80-vaapi-i686-fpermissive.patch
deleted file mode 100644
index 384274a..0000000
--- a/chromium-75.0.3770.80-vaapi-i686-fpermissive.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-diff -up chromium-81.0.4044.9/media/gpu/vaapi/BUILD.gn.24~ chromium-81.0.4044.9/media/gpu/vaapi/BUILD.gn
---- chromium-81.0.4044.9/media/gpu/vaapi/BUILD.gn.24~	2020-02-05 22:54:12.000000000 +0100
-+++ chromium-81.0.4044.9/media/gpu/vaapi/BUILD.gn	2020-02-09 23:33:25.660636399 +0100
-@@ -13,6 +13,10 @@ import("//ui/ozone/ozone.gni")
- assert(is_linux)
- assert(use_vaapi)
- 
-+config("vaapi_permissive") {
-+  cflags = [ "-fpermissive" ]
-+}
-+
- generate_stubs("libva_stubs") {
-   extra_header = "va_stub_header.fragment"
-   sigs = [ "va.sigs" ]
-@@ -119,6 +123,8 @@ source_set("vaapi") {
-     ]
-   }
- 
-+  configs += [ ":vaapi_permissive" ]
-+
-   if (use_x11) {
-     configs += [ "//build/config/linux:x11" ]
-     deps += [ "//ui/gfx/x" ]
diff --git a/chromium-75.0.3770.80-vaapi-libva1-compatibility.patch b/chromium-75.0.3770.80-vaapi-libva1-compatibility.patch
deleted file mode 100644
index dc0bfcb..0000000
--- a/chromium-75.0.3770.80-vaapi-libva1-compatibility.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff -up chromium-75.0.3770.80/media/gpu/vaapi/vaapi_mjpeg_decode_accelerator.cc.va1compat chromium-75.0.3770.80/media/gpu/vaapi/vaapi_mjpeg_decode_accelerator.cc
---- chromium-75.0.3770.80/media/gpu/vaapi/vaapi_mjpeg_decode_accelerator.cc.va1compat	2019-06-05 11:35:57.274466969 -0400
-+++ chromium-75.0.3770.80/media/gpu/vaapi/vaapi_mjpeg_decode_accelerator.cc	2019-06-05 11:36:17.201067326 -0400
-@@ -39,6 +39,10 @@ enum VAJDADecoderFailure {
-   VAJDA_DECODER_FAILURES_MAX,
- };
- 
-+#ifndef VA_FOURCC_I420
-+#define VA_FOURCC_I420 VA_FOURCC('I', '4', '2', '0')
-+#endif
-+
- static void ReportToVAJDADecoderFailureUMA(VAJDADecoderFailure failure) {
-   UMA_HISTOGRAM_ENUMERATION("Media.VAJDA.DecoderFailure", failure,
-                             VAJDA_DECODER_FAILURES_MAX + 1);
diff --git a/chromium-80-buildfix.patch b/chromium-80-buildfix.patch
deleted file mode 100644
index 0b2b539..0000000
--- a/chromium-80-buildfix.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -up chromium-80.0.3987.53/chrome/common/string_matching/fuzzy_tokenized_string_match.cc.omv~ chromium-80.0.3987.53/chrome/common/string_matching/fuzzy_tokenized_string_match.cc
---- chromium-80.0.3987.53/chrome/common/string_matching/fuzzy_tokenized_string_match.cc.omv~	2020-01-21 20:23:08.610659274 +0100
-+++ chromium-80.0.3987.53/chrome/common/string_matching/fuzzy_tokenized_string_match.cc	2020-01-21 20:23:16.758659017 +0100
-@@ -6,6 +6,7 @@
- 
- #include <algorithm>
- #include <iterator>
-+#include <cmath>
- 
- #include "base/i18n/case_conversion.h"
- #include "base/metrics/field_trial_params.h"
diff --git a/chromium-80-libstdc++10.patch b/chromium-80-libstdc++10.patch
deleted file mode 100644
index ffaac17..0000000
--- a/chromium-80-libstdc++10.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-diff -up chromium-80.0.3987.87/base/trace_event/trace_event_memory_overhead.h.omv~ chromium-80.0.3987.87/base/trace_event/trace_event_memory_overhead.h
---- chromium-80.0.3987.87/base/trace_event/trace_event_memory_overhead.h.omv~	2020-02-11 16:45:08.740925266 +0100
-+++ chromium-80.0.3987.87/base/trace_event/trace_event_memory_overhead.h	2020-02-11 16:45:17.468924694 +0100
-@@ -8,6 +8,7 @@
- #include <stddef.h>
- #include <stdint.h>
- 
-+#include <string>
- #include <unordered_map>
- 
- #include "base/base_export.h"
-diff -up chromium-80.0.3987.87/third_party/angle/include/platform/Platform.h.omv~ chromium-80.0.3987.87/third_party/angle/include/platform/Platform.h
---- chromium-80.0.3987.87/third_party/angle/include/platform/Platform.h.omv~	2020-02-11 17:29:25.432751301 +0100
-+++ chromium-80.0.3987.87/third_party/angle/include/platform/Platform.h	2020-02-11 17:29:33.342750783 +0100
-@@ -236,11 +236,11 @@ inline void DefaultOverrideFeaturesMtl(P
- using ProgramKeyType   = std::array<uint8_t, 20>;
- using CacheProgramFunc = void (*)(PlatformMethods *platform,
-                                   const ProgramKeyType &key,
--                                  size_t programSize,
-+                                  std::size_t programSize,
-                                   const uint8_t *programBytes);
- inline void DefaultCacheProgram(PlatformMethods *platform,
-                                 const ProgramKeyType &key,
--                                size_t programSize,
-+                                std::size_t programSize,
-                                 const uint8_t *programBytes)
- {}
- 
diff --git a/chromium-80-unbundle-libxml.patch b/chromium-80-unbundle-libxml.patch
deleted file mode 100644
index 6194a8b..0000000
--- a/chromium-80-unbundle-libxml.patch
+++ /dev/null
@@ -1,126 +0,0 @@
-diff -up chromium-80.0.3987.53/base/test/BUILD.gn.omv~ chromium-80.0.3987.53/base/test/BUILD.gn
---- chromium-80.0.3987.53/base/test/BUILD.gn.omv~	2020-01-21 00:36:16.356116037 +0100
-+++ chromium-80.0.3987.53/base/test/BUILD.gn	2020-01-21 00:36:33.714115195 +0100
-@@ -226,8 +226,7 @@ static_library("test_support") {
-     "//testing/gmock",
-     "//testing/gtest",
-     "//third_party/icu:icuuc",
--    "//third_party/libxml:libxml_utils",
--    "//third_party/libxml:xml_reader",
-+    "//third_party/libxml:system_libxml",
-   ]
- 
-   if (is_posix || is_fuchsia) {
-@@ -298,8 +297,7 @@ static_library("test_support") {
-     public_deps -= [ "//base:i18n" ]
-     deps -= [
-       "//third_party/icu:icuuc",
--      "//third_party/libxml:libxml_utils",
--      "//third_party/libxml:xml_reader",
-+      "//third_party/libxml:system_libxml",
-     ]
-   }
- }
-diff -up chromium-80.0.3987.53/chrome/browser/BUILD.gn.omv~ chromium-80.0.3987.53/chrome/browser/BUILD.gn
---- chromium-80.0.3987.53/chrome/browser/BUILD.gn.omv~	2020-01-21 00:37:48.048111588 +0100
-+++ chromium-80.0.3987.53/chrome/browser/BUILD.gn	2020-01-21 00:37:53.502111324 +0100
-@@ -2220,7 +2220,7 @@ jumbo_static_library("browser") {
-     "//third_party/icu",
-     "//third_party/leveldatabase",
-     "//third_party/libaddressinput",
--    "//third_party/libxml:xml_writer",
-+    "//third_party/libxml:system_libxml",
-     "//third_party/libyuv",
-     "//third_party/metrics_proto",
-     "//third_party/re2",
-diff -up chromium-80.0.3987.53/components/policy/core/common/BUILD.gn.omv~ chromium-80.0.3987.53/components/policy/core/common/BUILD.gn
---- chromium-80.0.3987.53/components/policy/core/common/BUILD.gn.omv~	2020-01-21 00:36:51.556114329 +0100
-+++ chromium-80.0.3987.53/components/policy/core/common/BUILD.gn	2020-01-21 00:37:05.326113661 +0100
-@@ -173,7 +173,7 @@ jumbo_source_set("internal") {
-     "//net",
-     "//services/identity/public/cpp:cpp_types",
-     "//services/network/public/cpp",
--    "//third_party/libxml:xml_writer",
-+    "//third_party/libxml:system_libxml",
-     "//third_party/re2",
-     "//url",
-   ]
-@@ -422,7 +422,7 @@ source_set("unit_tests") {
-     "//services/network:test_support",
-     "//testing/gmock",
-     "//testing/gtest",
--    "//third_party/libxml:xml_reader",
-+    "//third_party/libxml:system_libxml",
-   ]
- }
- 
-diff -up chromium-80.0.3987.53/components/wifi/BUILD.gn.omv~ chromium-80.0.3987.53/components/wifi/BUILD.gn
---- chromium-80.0.3987.53/components/wifi/BUILD.gn.omv~	2020-01-21 00:37:16.767113106 +0100
-+++ chromium-80.0.3987.53/components/wifi/BUILD.gn	2020-01-21 00:37:32.265112354 +0100
-@@ -26,8 +26,8 @@ jumbo_component("wifi") {
-   if (is_win) {
-     libs = [ "iphlpapi.lib" ]
-     deps += [
--      "//third_party/libxml:xml_reader",  # Safe, data come from system.
--      "//third_party/libxml:xml_writer",
-+      "//third_party/libxml:system_libxml",  # Safe, data come from system.
-+      "//third_party/libxml:system_libxml",
-     ]
-   }
- 
-diff -up chromium-80.0.3987.53/services/data_decoder/BUILD.gn.omv~ chromium-80.0.3987.53/services/data_decoder/BUILD.gn
---- chromium-80.0.3987.53/services/data_decoder/BUILD.gn.omv~	2020-01-21 00:39:16.162107314 +0100
-+++ chromium-80.0.3987.53/services/data_decoder/BUILD.gn	2020-01-21 00:39:31.204106584 +0100
-@@ -33,7 +33,7 @@ source_set("lib") {
-     "//mojo/public/cpp/bindings",
-     "//net",
-     "//skia",
--    "//third_party/libxml:xml_reader",
-+    "//third_party/libxml:system_libxml",
-     "//ui/gfx",
-     "//ui/gfx/geometry",
-   ]
-@@ -117,8 +117,7 @@ fuzzer_test("xml_parser_fuzzer") {
-   deps = [
-     ":lib",
-     "//base",
--    "//third_party/libxml:libxml_utils",
--    "//third_party/libxml:xml_reader",
-+    "//third_party/libxml:system_libxml",
-   ]
-   dict = "//third_party/libxml/fuzz/xml.dict"
-   seed_corpus = "//third_party/libxml/fuzz/seed_corpus"
-diff -up chromium-80.0.3987.53/testing/libfuzzer/fuzzers/BUILD.gn.omv~ chromium-80.0.3987.53/testing/libfuzzer/fuzzers/BUILD.gn
---- chromium-80.0.3987.53/testing/libfuzzer/fuzzers/BUILD.gn.omv~	2020-01-21 00:38:50.140108576 +0100
-+++ chromium-80.0.3987.53/testing/libfuzzer/fuzzers/BUILD.gn	2020-01-21 00:39:05.881107812 +0100
-@@ -70,7 +70,7 @@ fuzzer_test("template_url_parser_fuzzer"
-     "//mojo/core/embedder",
-     "//services/data_decoder/public/cpp",
-     "//services/data_decoder/public/cpp:test_support",
--    "//third_party/libxml:libxml",
-+    "//third_party/libxml:system_libxml",
-   ]
-   dict = "//third_party/libxml/fuzz/xml.dict"
-   libfuzzer_options = [ "max_len=4096" ]
-@@ -137,7 +137,7 @@ fuzzer_test("libxml_xml_read_memory_fuzz
-     "libxml_xml_read_memory_fuzzer.cc",
-   ]
-   deps = [
--    "//third_party/libxml:libxml",
-+    "//third_party/libxml:system_libxml",
-   ]
-   dict = "//third_party/libxml/fuzz/xml.dict"
-   seed_corpus = "//third_party/libxml/fuzz/seed_corpus"
-diff -up chromium-80.0.3987.53/tools/traffic_annotation/auditor/BUILD.gn.omv~ chromium-80.0.3987.53/tools/traffic_annotation/auditor/BUILD.gn
---- chromium-80.0.3987.53/tools/traffic_annotation/auditor/BUILD.gn.omv~	2020-01-21 00:38:30.795109515 +0100
-+++ chromium-80.0.3987.53/tools/traffic_annotation/auditor/BUILD.gn	2020-01-21 00:38:41.250109007 +0100
-@@ -70,8 +70,7 @@ source_set("auditor_sources") {
-     ":traffic_annotation",
-     "//base",
-     "//net/traffic_annotation",
--    "//third_party/libxml:xml_reader",  # Safe, consumes Chromium-produced file.
--    "//third_party/libxml:xml_writer",
-+    "//third_party/libxml:system_libxml",  # Safe, consumes Chromium-produced file.
-     "//third_party/protobuf:protobuf_full",
-     "//third_party/re2",
-   ]
diff --git a/chromium-81-compile.patch b/chromium-81-compile.patch
deleted file mode 100644
index 249b536..0000000
--- a/chromium-81-compile.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-diff -up chromium-81.0.4044.26/media/cdm/supported_cdm_versions.h.omv~ chromium-81.0.4044.26/media/cdm/supported_cdm_versions.h
---- chromium-81.0.4044.26/media/cdm/supported_cdm_versions.h.omv~	2020-02-21 22:16:45.640175009 +0100
-+++ chromium-81.0.4044.26/media/cdm/supported_cdm_versions.h	2020-02-21 22:16:51.817175281 +0100
-@@ -52,7 +52,7 @@ constexpr bool IsSupportedCdmModuleVersi
- // Returns whether the CDM interface of |version| is supported in the
- // implementation.
- constexpr bool IsSupportedCdmInterfaceVersion(int version) {
--  for (size_t i = 0; i < kSupportedCdmInterfaceVersions.size(); ++i) {
-+  for (std::size_t i = 0; i < kSupportedCdmInterfaceVersions.size(); ++i) {
-     if (kSupportedCdmInterfaceVersions[i].version == version)
-       return true;
-   }
-@@ -70,7 +70,7 @@ constexpr bool IsSupportedCdmHostVersion
- 
- // Returns whether the CDM interface of |version| is enabled by default.
- constexpr bool IsCdmInterfaceVersionEnabledByDefault(int version) {
--  for (size_t i = 0; i < kSupportedCdmInterfaceVersions.size(); ++i) {
-+  for (std::size_t i = 0; i < kSupportedCdmInterfaceVersions.size(); ++i) {
-     if (kSupportedCdmInterfaceVersions[i].version == version)
-       return kSupportedCdmInterfaceVersions[i].enabled;
-   }
-diff -up chromium-81.0.4044.26/media/gpu/vaapi/vaapi_picture_tfp.cc.omv~ chromium-81.0.4044.26/media/gpu/vaapi/vaapi_picture_tfp.cc
---- chromium-81.0.4044.26/media/gpu/vaapi/vaapi_picture_tfp.cc.omv~	2020-02-21 22:27:55.749719348 +0100
-+++ chromium-81.0.4044.26/media/gpu/vaapi/vaapi_picture_tfp.cc	2020-02-21 22:35:51.348696274 +0100
-@@ -57,7 +57,7 @@ bool VaapiTFPPicture::Initialize() {
-   if (make_context_current_cb_ && !make_context_current_cb_.Run())
-     return false;
- 
--  glx_image_ = new gl::GLImageGLX(size_, GL_RGB);
-+  glx_image_ = new gl::GLImageGLX(size_, gfx::BufferFormat::RGBX_8888);
-   if (!glx_image_->Initialize(x_pixmap_)) {
-     // x_pixmap_ will be freed in the destructor.
-     DLOG(ERROR) << "Failed creating a GLX Pixmap for TFP";
-diff -up chromium-81.0.4044.26/media/mojo/services/gpu_mojo_media_client.cc.omv~ chromium-81.0.4044.26/media/mojo/services/gpu_mojo_media_client.cc
-diff -up chromium-81.0.4044.26/third_party/perfetto/include/perfetto/base/task_runner.h.omv~ chromium-81.0.4044.26/third_party/perfetto/include/perfetto/base/task_runner.h
---- chromium-81.0.4044.26/third_party/perfetto/include/perfetto/base/task_runner.h.omv~	2020-02-21 19:59:19.467811395 +0100
-+++ chromium-81.0.4044.26/third_party/perfetto/include/perfetto/base/task_runner.h	2020-02-21 19:59:26.643811711 +0100
-@@ -18,6 +18,7 @@
- #define INCLUDE_PERFETTO_BASE_TASK_RUNNER_H_
- 
- #include <functional>
-+#include <cstdint>
- 
- #include "perfetto/base/export.h"
- 
-diff -up chromium-81.0.4044.26/third_party/webrtc/call/rtx_receive_stream.h.omv~ chromium-81.0.4044.26/third_party/webrtc/call/rtx_receive_stream.h
---- chromium-81.0.4044.26/third_party/webrtc/call/rtx_receive_stream.h.omv~	2020-02-21 21:13:24.896007416 +0100
-+++ chromium-81.0.4044.26/third_party/webrtc/call/rtx_receive_stream.h	2020-02-21 21:13:32.049007731 +0100
-@@ -12,6 +12,7 @@
- #define CALL_RTX_RECEIVE_STREAM_H_
- 
- #include <map>
-+#include <cstdint>
- 
- #include "call/rtp_packet_sink_interface.h"
- 
-diff -up chromium-81.0.4044.26/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h.omv~ chromium-81.0.4044.26/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h
---- chromium-81.0.4044.26/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h.omv~	2020-02-21 21:25:18.455038880 +0100
-+++ chromium-81.0.4044.26/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h	2020-02-21 21:25:23.648039109 +0100
-@@ -31,7 +31,7 @@ class ClockdriftDetector {
-  private:
-   std::array<int, 3> delay_history_;
-   Level level_;
--  size_t stability_counter_;
-+  std::size_t stability_counter_;
- };
- }  // namespace webrtc
- 
-diff -up chromium-81.0.4044.26/ui/gfx/linux/drm_util_linux.h.omv~ chromium-81.0.4044.26/ui/gfx/linux/drm_util_linux.h
---- chromium-81.0.4044.26/ui/gfx/linux/drm_util_linux.h.omv~	2020-02-21 19:29:40.493732951 +0100
-+++ chromium-81.0.4044.26/ui/gfx/linux/drm_util_linux.h	2020-02-21 19:29:46.970733237 +0100
-@@ -6,6 +6,7 @@
- #define UI_GFX_LINUX_DRM_UTIL_LINUX_H_
- 
- #include "ui/gfx/buffer_types.h"
-+#include <cstdint>
- 
- namespace ui {
- 
diff --git a/chromium-81-dont-pretend-vaapi-is-broken.patch b/chromium-81-dont-pretend-vaapi-is-broken.patch
new file mode 100644
index 0000000..58172c6
--- /dev/null
+++ b/chromium-81-dont-pretend-vaapi-is-broken.patch
@@ -0,0 +1,26 @@
+diff -up chromium-81.0.4044.92/gpu/config/software_rendering_list.json.omv~ chromium-81.0.4044.92/gpu/config/software_rendering_list.json
+--- chromium-81.0.4044.92/gpu/config/software_rendering_list.json.omv~	2020-04-14 21:39:20.199909945 +0200
++++ chromium-81.0.4044.92/gpu/config/software_rendering_list.json	2020-04-14 21:39:41.903603086 +0200
+@@ -336,22 +336,6 @@
+       ]
+     },
+     {
+-      "id": 48,
+-      "description": "Accelerated video decode is unavailable on Linux",
+-      "cr_bugs": [137247, 1032907],
+-      "os": {
+-        "type": "linux"
+-      },
+-      "exceptions": [
+-        {
+-          "machine_model_name": ["Chromecast"]
+-        }
+-      ],
+-      "features": [
+-        "accelerated_video_decode"
+-      ]
+-    },
+-    {
+       "id": 50,
+       "description": "Disable VMware software renderer on older Mesa",
+       "cr_bugs": [145531, 332596, 571899, 629434],
diff --git a/chromium-81-enable-gpu-features.patch b/chromium-81-enable-gpu-features.patch
new file mode 100644
index 0000000..8324444
--- /dev/null
+++ b/chromium-81-enable-gpu-features.patch
@@ -0,0 +1,34 @@
+diff -up chromium-81.0.4044.92/gpu/config/gpu_finch_features.cc.omv~ chromium-81.0.4044.92/gpu/config/gpu_finch_features.cc
+--- chromium-81.0.4044.92/gpu/config/gpu_finch_features.cc.omv~	2020-04-14 21:45:54.420225847 +0200
++++ chromium-81.0.4044.92/gpu/config/gpu_finch_features.cc	2020-04-14 21:51:07.452169158 +0200
+@@ -25,9 +25,10 @@ const base::Feature kDisableSurfaceContr
+ // Enable GPU Rasterization by default. This can still be overridden by
+ // --force-gpu-rasterization or --disable-gpu-rasterization.
+ #if defined(OS_MACOSX) || defined(OS_WIN) || defined(OS_CHROMEOS) || \
+-    defined(OS_ANDROID) || defined(OS_FUCHSIA)
++    defined(OS_ANDROID) || defined(OS_FUCHSIA) || defined(OS_LINUX)
+ // DefaultEnableGpuRasterization has launched on Mac, Windows, ChromeOS, and
+-// Android.
++// Android. And of course it works on Linux too, just because Google hates Linux
++// doesn't mean we have to.
+ const base::Feature kDefaultEnableGpuRasterization{
+     "DefaultEnableGpuRasterization", base::FEATURE_ENABLED_BY_DEFAULT};
+ #else
+@@ -37,7 +38,7 @@ const base::Feature kDefaultEnableGpuRas
+ 
+ // Enable out of process rasterization by default.  This can still be overridden
+ // by --enable-oop-rasterization or --disable-oop-rasterization.
+-#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(OS_MACOSX)
++#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(OS_MACOSX) || defined(OS_LINUX)
+ const base::Feature kDefaultEnableOopRasterization{
+     "DefaultEnableOopRasterization", base::FEATURE_ENABLED_BY_DEFAULT};
+ #else
+@@ -58,7 +59,7 @@ const base::Feature kGpuProcessHighPrior
+ #endif
+ 
+ // Use ThreadPriority::DISPLAY for GPU main, viz compositor and IO threads.
+-#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(OS_WIN)
++#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(OS_WIN) || defined(OS_LINUX)
+ const base::Feature kGpuUseDisplayThreadPriority{
+     "GpuUseDisplayThreadPriority", base::FEATURE_ENABLED_BY_DEFAULT};
+ #else
diff --git a/chromium-69-extra-media.patch b/chromium-81-extra-media.patch
similarity index 68%
rename from chromium-69-extra-media.patch
rename to chromium-81-extra-media.patch
index 40bd056..8ee195a 100644
--- a/chromium-69-extra-media.patch
+++ b/chromium-81-extra-media.patch
@@ -1,6 +1,6 @@
-diff -up chromium-81.0.4044.9/media/base/audio_codecs.cc.29~ chromium-81.0.4044.9/media/base/audio_codecs.cc
---- chromium-81.0.4044.9/media/base/audio_codecs.cc.29~	2020-02-05 22:53:06.000000000 +0100
-+++ chromium-81.0.4044.9/media/base/audio_codecs.cc	2020-02-09 23:39:59.179610630 +0100
+diff -up chromium-81.0.4044.92/media/base/audio_codecs.cc.29~ chromium-81.0.4044.92/media/base/audio_codecs.cc
+--- chromium-81.0.4044.92/media/base/audio_codecs.cc.29~	2020-04-03 06:10:46.000000000 +0200
++++ chromium-81.0.4044.92/media/base/audio_codecs.cc	2020-04-13 14:26:16.191198335 +0200
 @@ -46,6 +46,10 @@ std::string GetCodecName(AudioCodec code
        return "ac3";
      case kCodecMpegHAudio:
@@ -23,9 +23,9 @@ diff -up chromium-81.0.4044.9/media/base/audio_codecs.cc.29~ chromium-81.0.4044.
    return kUnknownAudioCodec;
  }
  
-diff -up chromium-81.0.4044.9/media/base/audio_codecs.h.29~ chromium-81.0.4044.9/media/base/audio_codecs.h
---- chromium-81.0.4044.9/media/base/audio_codecs.h.29~	2020-02-09 23:38:09.302617825 +0100
-+++ chromium-81.0.4044.9/media/base/audio_codecs.h	2020-02-09 23:40:33.552608380 +0100
+diff -up chromium-81.0.4044.92/media/base/audio_codecs.h.29~ chromium-81.0.4044.92/media/base/audio_codecs.h
+--- chromium-81.0.4044.92/media/base/audio_codecs.h.29~	2020-04-12 15:37:58.182850697 +0200
++++ chromium-81.0.4044.92/media/base/audio_codecs.h	2020-04-13 14:25:37.209757394 +0200
 @@ -33,13 +33,15 @@ enum AudioCodec {
    kCodecALAC = 15,
    kCodecAC3 = 16,
@@ -43,9 +43,9 @@ diff -up chromium-81.0.4044.9/media/base/audio_codecs.h.29~ chromium-81.0.4044.9
  };
  
  enum class AudioCodecProfile {
-diff -up chromium-81.0.4044.9/media/base/mime_util_internal.cc.29~ chromium-81.0.4044.9/media/base/mime_util_internal.cc
---- chromium-81.0.4044.9/media/base/mime_util_internal.cc.29~	2020-02-05 22:53:06.000000000 +0100
-+++ chromium-81.0.4044.9/media/base/mime_util_internal.cc	2020-02-09 23:38:09.308617825 +0100
+diff -up chromium-81.0.4044.92/media/base/mime_util_internal.cc.29~ chromium-81.0.4044.92/media/base/mime_util_internal.cc
+--- chromium-81.0.4044.92/media/base/mime_util_internal.cc.29~	2020-04-03 06:10:46.000000000 +0200
++++ chromium-81.0.4044.92/media/base/mime_util_internal.cc	2020-04-12 15:37:58.182850697 +0200
 @@ -89,6 +89,10 @@ const StringToCodecMap& GetStringToCodec
        {"vp8", MimeUtil::VP8},
        {"vp8.0", MimeUtil::VP8},
@@ -135,9 +135,9 @@ diff -up chromium-81.0.4044.9/media/base/mime_util_internal.cc.29~ chromium-81.0
  #if BUILDFLAG(USE_PROPRIETARY_CODECS)
    AddContainerWithCodecs("audio/aac", implicit_codec);  // AAC / ADTS.
    // These strings are supported for backwards compatibility only and thus only
-diff -up chromium-81.0.4044.9/media/base/mime_util_internal.h.29~ chromium-81.0.4044.9/media/base/mime_util_internal.h
---- chromium-81.0.4044.9/media/base/mime_util_internal.h.29~	2020-02-05 22:53:06.000000000 +0100
-+++ chromium-81.0.4044.9/media/base/mime_util_internal.h	2020-02-09 23:38:09.311617825 +0100
+diff -up chromium-81.0.4044.92/media/base/mime_util_internal.h.29~ chromium-81.0.4044.92/media/base/mime_util_internal.h
+--- chromium-81.0.4044.92/media/base/mime_util_internal.h.29~	2020-04-03 06:10:46.000000000 +0200
++++ chromium-81.0.4044.92/media/base/mime_util_internal.h	2020-04-12 15:37:58.182850697 +0200
 @@ -47,7 +47,11 @@ class MEDIA_EXPORT MimeUtil {
      DOLBY_VISION,
      AV1,
@@ -151,9 +151,9 @@ diff -up chromium-81.0.4044.9/media/base/mime_util_internal.h.29~ chromium-81.0.
    };
  
    // Platform configuration structure.  Controls which codecs are supported at
-diff -up chromium-81.0.4044.9/media/base/supported_types.cc.29~ chromium-81.0.4044.9/media/base/supported_types.cc
---- chromium-81.0.4044.9/media/base/supported_types.cc.29~	2020-02-05 22:53:06.000000000 +0100
-+++ chromium-81.0.4044.9/media/base/supported_types.cc	2020-02-09 23:41:22.662605164 +0100
+diff -up chromium-81.0.4044.92/media/base/supported_types.cc.29~ chromium-81.0.4044.92/media/base/supported_types.cc
+--- chromium-81.0.4044.92/media/base/supported_types.cc.29~	2020-04-03 06:11:34.000000000 +0200
++++ chromium-81.0.4044.92/media/base/supported_types.cc	2020-04-13 14:27:13.657848219 +0200
 @@ -163,6 +163,7 @@ bool IsAudioCodecProprietary(AudioCodec
      case kCodecAAC:
      case kCodecAC3:
@@ -215,9 +215,9 @@ diff -up chromium-81.0.4044.9/media/base/supported_types.cc.29~ chromium-81.0.40
      case kCodecDolbyVision:
        return false;
  
-diff -up chromium-81.0.4044.9/media/ffmpeg/ffmpeg_common.cc.29~ chromium-81.0.4044.9/media/ffmpeg/ffmpeg_common.cc
---- chromium-81.0.4044.9/media/ffmpeg/ffmpeg_common.cc.29~	2020-02-09 23:38:09.318617824 +0100
-+++ chromium-81.0.4044.9/media/ffmpeg/ffmpeg_common.cc	2020-02-09 23:43:45.020595842 +0100
+diff -up chromium-81.0.4044.92/media/ffmpeg/ffmpeg_common.cc.29~ chromium-81.0.4044.92/media/ffmpeg/ffmpeg_common.cc
+--- chromium-81.0.4044.92/media/ffmpeg/ffmpeg_common.cc.29~	2020-04-12 15:37:58.182850697 +0200
++++ chromium-81.0.4044.92/media/ffmpeg/ffmpeg_common.cc	2020-04-13 14:31:35.807811237 +0200
 @@ -124,6 +124,10 @@ AudioCodec CodecIDToAudioCodec(AVCodecID
      case AV_CODEC_ID_MPEGH_3D_AUDIO:
        return kCodecMpegHAudio;
@@ -244,52 +244,25 @@ diff -up chromium-81.0.4044.9/media/ffmpeg/ffmpeg_common.cc.29~ chromium-81.0.40
      default:
        DVLOG(1) << "Unknown AudioCodec: " << audio_codec;
    }
-@@ -347,29 +359,6 @@ bool AVCodecContextToAudioDecoderConfig(
+@@ -347,6 +359,7 @@ bool AVCodecContextToAudioDecoderConfig(
                                                 codec_context->channels);
  
    int sample_rate = codec_context->sample_rate;
--  switch (codec) {
--    // For AC3/EAC3 we enable only demuxing, but not decoding, so FFmpeg does
--    // not fill |sample_fmt|.
--    case kCodecAC3:
--    case kCodecEAC3:
--#if BUILDFLAG(ENABLE_PLATFORM_AC3_EAC3_AUDIO)
--      // The spec for AC3/EAC3 audio is ETSI TS 102 366. According to sections
--      // F.3.1 and F.5.1 in that spec the sample_format for AC3/EAC3 must be 16.
--      sample_format = kSampleFormatS16;
--#else
--      NOTREACHED();
--#endif
--      break;
--#if BUILDFLAG(ENABLE_PLATFORM_MPEG_H_AUDIO)
--    case kCodecMpegHAudio:
--      channel_layout = CHANNEL_LAYOUT_BITSTREAM;
--      sample_format = kSampleFormatMpegHAudio;
--      break;
--#endif
--
--    default:
--      break;
--  }
++#if 0
+   switch (codec) {
+     // For AC3/EAC3 we enable only demuxing, but not decoding, so FFmpeg does
+     // not fill |sample_fmt|.
+@@ -370,6 +383,7 @@ bool AVCodecContextToAudioDecoderConfig(
+     default:
+       break;
+   }
++#endif
  
    base::TimeDelta seek_preroll;
    if (codec_context->seek_preroll > 0) {
-@@ -399,12 +388,6 @@ bool AVCodecContextToAudioDecoderConfig(
-   if (channel_layout == CHANNEL_LAYOUT_DISCRETE)
-     config->SetChannelsForDiscrete(codec_context->channels);
- 
--#if BUILDFLAG(ENABLE_PLATFORM_AC3_EAC3_AUDIO)
--  // These are bitstream formats unknown to ffmpeg, so they don't have
--  // a known sample format size.
--  if (codec == kCodecAC3 || codec == kCodecEAC3)
--    return true;
--#endif
- #if BUILDFLAG(ENABLE_PLATFORM_MPEG_H_AUDIO)
-   if (codec == kCodecMpegHAudio)
-     return true;
-diff -up chromium-81.0.4044.9/media/filters/ffmpeg_video_decoder.cc.29~ chromium-81.0.4044.9/media/filters/ffmpeg_video_decoder.cc
---- chromium-81.0.4044.9/media/filters/ffmpeg_video_decoder.cc.29~	2020-02-05 22:53:06.000000000 +0100
-+++ chromium-81.0.4044.9/media/filters/ffmpeg_video_decoder.cc	2020-02-09 23:38:09.325617824 +0100
+diff -up chromium-81.0.4044.92/media/filters/ffmpeg_video_decoder.cc.29~ chromium-81.0.4044.92/media/filters/ffmpeg_video_decoder.cc
+--- chromium-81.0.4044.92/media/filters/ffmpeg_video_decoder.cc.29~	2020-04-03 06:11:34.000000000 +0200
++++ chromium-81.0.4044.92/media/filters/ffmpeg_video_decoder.cc	2020-04-12 15:37:58.182850697 +0200
 @@ -38,7 +38,6 @@ static int GetFFmpegVideoDecoderThreadCo
      case kUnknownVideoCodec:
      case kCodecVC1:
@@ -306,9 +279,9 @@ diff -up chromium-81.0.4044.9/media/filters/ffmpeg_video_decoder.cc.29~ chromium
        // Normalize to three threads for 1080p content, then scale linearly
        // with number of pixels.
        // Examples:
-diff -up chromium-81.0.4044.9/media/remoting/media_remoting_rpc.proto.29~ chromium-81.0.4044.9/media/remoting/media_remoting_rpc.proto
---- chromium-81.0.4044.9/media/remoting/media_remoting_rpc.proto.29~	2020-02-05 22:53:07.000000000 +0100
-+++ chromium-81.0.4044.9/media/remoting/media_remoting_rpc.proto	2020-02-09 23:38:09.333617823 +0100
+diff -up chromium-81.0.4044.92/media/remoting/media_remoting_rpc.proto.29~ chromium-81.0.4044.92/media/remoting/media_remoting_rpc.proto
+--- chromium-81.0.4044.92/media/remoting/media_remoting_rpc.proto.29~	2020-04-03 06:10:46.000000000 +0200
++++ chromium-81.0.4044.92/media/remoting/media_remoting_rpc.proto	2020-04-12 15:37:58.182850697 +0200
 @@ -67,6 +67,8 @@ message AudioDecoderConfig {
      kCodecALAC = 15;
      kCodecAC3 = 16;
@@ -318,9 +291,9 @@ diff -up chromium-81.0.4044.9/media/remoting/media_remoting_rpc.proto.29~ chromi
    }
  
    // Proto version of media::SampleFormat.
-diff -up chromium-81.0.4044.9/media/remoting/proto_enum_utils.cc.29~ chromium-81.0.4044.9/media/remoting/proto_enum_utils.cc
---- chromium-81.0.4044.9/media/remoting/proto_enum_utils.cc.29~	2020-02-05 22:53:07.000000000 +0100
-+++ chromium-81.0.4044.9/media/remoting/proto_enum_utils.cc	2020-02-09 23:38:09.341617823 +0100
+diff -up chromium-81.0.4044.92/media/remoting/proto_enum_utils.cc.29~ chromium-81.0.4044.92/media/remoting/proto_enum_utils.cc
+--- chromium-81.0.4044.92/media/remoting/proto_enum_utils.cc.29~	2020-04-03 06:10:46.000000000 +0200
++++ chromium-81.0.4044.92/media/remoting/proto_enum_utils.cc	2020-04-12 15:37:58.182850697 +0200
 @@ -60,6 +60,8 @@ base::Optional<AudioCodec> ToMediaAudioC
      CASE_RETURN_OTHER(kCodecALAC);
      CASE_RETURN_OTHER(kCodecAC3);
@@ -339,9 +312,9 @@ diff -up chromium-81.0.4044.9/media/remoting/proto_enum_utils.cc.29~ chromium-81
    }
    return base::nullopt;  // Not a 'default' to ensure compile-time checks.
  }
-diff -up chromium-81.0.4044.9/net/base/mime_util.cc.29~ chromium-81.0.4044.9/net/base/mime_util.cc
---- chromium-81.0.4044.9/net/base/mime_util.cc.29~	2020-02-05 22:53:08.000000000 +0100
-+++ chromium-81.0.4044.9/net/base/mime_util.cc	2020-02-09 23:38:09.341617823 +0100
+diff -up chromium-81.0.4044.92/net/base/mime_util.cc.29~ chromium-81.0.4044.92/net/base/mime_util.cc
+--- chromium-81.0.4044.92/net/base/mime_util.cc.29~	2020-04-03 06:10:47.000000000 +0200
++++ chromium-81.0.4044.92/net/base/mime_util.cc	2020-04-12 15:37:58.183850708 +0200
 @@ -165,6 +165,9 @@ static const MimeInfo kPrimaryMappings[]
      {"image/png", "png"},
      {"image/apng", "png"},
diff --git a/chromium-78.0.3904.70-unbundle-zlib.patch b/chromium-81-unbundle-zlib.patch
similarity index 51%
rename from chromium-78.0.3904.70-unbundle-zlib.patch
rename to chromium-81-unbundle-zlib.patch
index 08bb5b3..4c9131c 100644
--- a/chromium-78.0.3904.70-unbundle-zlib.patch
+++ b/chromium-81-unbundle-zlib.patch
@@ -1,6 +1,6 @@
-diff -up chromium-81.0.4044.9/third_party/perfetto/gn/BUILD.gn.17~ chromium-81.0.4044.9/third_party/perfetto/gn/BUILD.gn
---- chromium-81.0.4044.9/third_party/perfetto/gn/BUILD.gn.17~	2020-02-09 22:34:37.020867460 +0100
-+++ chromium-81.0.4044.9/third_party/perfetto/gn/BUILD.gn	2020-02-09 22:43:03.876834270 +0100
+diff -up chromium-81.0.4044.92/third_party/perfetto/gn/BUILD.gn.17~ chromium-81.0.4044.92/third_party/perfetto/gn/BUILD.gn
+--- chromium-81.0.4044.92/third_party/perfetto/gn/BUILD.gn.17~	2020-04-12 15:32:26.125149888 +0200
++++ chromium-81.0.4044.92/third_party/perfetto/gn/BUILD.gn	2020-04-12 15:33:39.545967688 +0200
 @@ -294,7 +294,7 @@ if (enable_perfetto_zlib) {
        public_configs = [ "//buildtools:zlib_config" ]
        public_deps = [ "//buildtools:zlib" ]
diff --git a/chromium-83-compile.patch b/chromium-83-compile.patch
new file mode 100644
index 0000000..8a3c84e
--- /dev/null
+++ b/chromium-83-compile.patch
@@ -0,0 +1,187 @@
+diff -up chromium-83.0.4103.7/extensions/browser/install/crx_install_error.cc.omv~ chromium-83.0.4103.7/extensions/browser/install/crx_install_error.cc
+--- chromium-83.0.4103.7/extensions/browser/install/crx_install_error.cc.omv~	2020-04-15 02:00:04.125064921 +0200
++++ chromium-83.0.4103.7/extensions/browser/install/crx_install_error.cc	2020-04-15 02:03:16.476574794 +0200
+@@ -76,10 +76,14 @@ bool CrxInstallError::IsCrxVerificationF
+     return false;
+   const SandboxedUnpackerFailureReason unpacker_failure_reason =
+       sandbox_failure_detail();
+-  return std::find(std::begin(kVerificationFailureReasons),
++  for(int i=0; i<sizeof(kVerificationFailureReasons)/sizeof(SandboxedUnpackerFailureReason); i++)
++    if(kVerificationFailureReasons[i] == unpacker_failure_reason)
++      return true;
++/*  return std::find(std::begin(kVerificationFailureReasons),
+                    std::end(kVerificationFailureReasons),
+                    unpacker_failure_reason) !=
+-         std::end(kVerificationFailureReasons);
++         std::end(kVerificationFailureReasons); */
++  return false;
+ }
+ 
+ }  // namespace extensions
+diff -up chromium-83.0.4103.7/ui/gfx/linux/drm_util_linux.h.omv~ chromium-83.0.4103.7/ui/gfx/linux/drm_util_linux.h
+--- chromium-83.0.4103.7/ui/gfx/linux/drm_util_linux.h.omv~	2020-04-15 02:03:37.801631329 +0200
++++ chromium-83.0.4103.7/ui/gfx/linux/drm_util_linux.h	2020-04-15 02:03:44.796649873 +0200
+@@ -6,6 +6,7 @@
+ #define UI_GFX_LINUX_DRM_UTIL_LINUX_H_
+ 
+ #include "ui/gfx/buffer_types.h"
++#include <cstdint>
+ 
+ namespace ui {
+ 
+diff -up chromium-83.0.4103.7/third_party/webrtc/call/rtx_receive_stream.h.omv~ chromium-83.0.4103.7/third_party/webrtc/call/rtx_receive_stream.h
+--- chromium-83.0.4103.7/third_party/webrtc/call/rtx_receive_stream.h.omv~	2020-04-15 22:28:18.663843345 +0200
++++ chromium-83.0.4103.7/third_party/webrtc/call/rtx_receive_stream.h	2020-04-15 22:28:29.857944267 +0200
+@@ -12,6 +12,7 @@
+ #define CALL_RTX_RECEIVE_STREAM_H_
+ 
+ #include <map>
++#include <cstdint>
+ 
+ #include "call/rtp_packet_sink_interface.h"
+ 
+diff -up chromium-83.0.4103.7/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h.omv~ chromium-83.0.4103.7/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h
+--- chromium-83.0.4103.7/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h.omv~	2020-04-15 22:28:51.655140762 +0200
++++ chromium-83.0.4103.7/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h	2020-04-15 22:28:54.212163813 +0200
+@@ -31,7 +31,7 @@ class ClockdriftDetector {
+  private:
+   std::array<int, 3> delay_history_;
+   Level level_;
+-  size_t stability_counter_;
++  std::size_t stability_counter_;
+ };
+ }  // namespace webrtc
+ 
+diff -up chromium-83.0.4103.7/base/strings/string16.h.omv~ chromium-83.0.4103.7/base/strings/string16.h
+diff -up chromium-83.0.4103.7/chrome/browser/performance_manager/graph/policies/background_tab_loading_policy_helpers.cc.omv~ chromium-83.0.4103.7/chrome/browser/performance_manager/graph/policies/background_tab_loading_policy_helpers.cc
+--- chromium-83.0.4103.7/chrome/browser/performance_manager/graph/policies/background_tab_loading_policy_helpers.cc.omv~	2020-04-16 01:08:39.294191150 +0200
++++ chromium-83.0.4103.7/chrome/browser/performance_manager/graph/policies/background_tab_loading_policy_helpers.cc	2020-04-16 01:09:05.740103071 +0200
+@@ -2,6 +2,7 @@
+ // Use of this source code is governed by a BSD-style license that can be
+ // found in the LICENSE file.
+ 
++#include <limits>
+ #include "chrome/browser/performance_manager/graph/policies/background_tab_loading_policy_helpers.h"
+ #include "base/logging.h"
+ 
+diff -up chromium-83.0.4103.7/chrome/browser/search/background/ntp_backgrounds.h.omv~ chromium-83.0.4103.7/chrome/browser/search/background/ntp_backgrounds.h
+--- chromium-83.0.4103.7/chrome/browser/search/background/ntp_backgrounds.h.omv~	2020-04-16 01:09:41.383772340 +0200
++++ chromium-83.0.4103.7/chrome/browser/search/background/ntp_backgrounds.h	2020-04-16 01:09:45.235637089 +0200
+@@ -9,7 +9,7 @@
+ 
+ class GURL;
+ 
+-const size_t kNtpBackgroundsCount = 5;
++const std::size_t kNtpBackgroundsCount = 5;
+ std::array<GURL, kNtpBackgroundsCount> GetNtpBackgrounds();
+ 
+ #endif  // CHROME_BROWSER_SEARCH_BACKGROUND_NTP_BACKGROUNDS_H_
+diff -up chromium-83.0.4103.7/components/printing/common/print_messages.cc.omv~ chromium-83.0.4103.7/components/printing/common/print_messages.cc
+diff -up chromium-83.0.4103.7/printing/common/metafile_utils.h.omv~ chromium-83.0.4103.7/printing/common/metafile_utils.h
+--- chromium-83.0.4103.7/printing/common/metafile_utils.h.omv~	2020-04-15 23:48:52.005519519 +0200
++++ chromium-83.0.4103.7/printing/common/metafile_utils.h	2020-04-15 23:49:03.044638136 +0200
+@@ -14,6 +14,7 @@
+ #include "third_party/skia/include/core/SkRefCnt.h"
+ #include "third_party/skia/include/core/SkSerialProcs.h"
+ #include "third_party/skia/include/core/SkStream.h"
++#include "ui/accessibility/ax_tree.h"
+ #include "ui/accessibility/ax_tree_update_forward.h"
+ 
+ namespace printing {
+diff -up chromium-83.0.4103.7/third_party/blink/public/common/user_agent/user_agent_metadata.h.omv~ chromium-83.0.4103.7/third_party/blink/public/common/user_agent/user_agent_metadata.h
+--- chromium-83.0.4103.7/third_party/blink/public/common/user_agent/user_agent_metadata.h.omv~	2020-04-16 02:35:12.287975120 +0200
++++ chromium-83.0.4103.7/third_party/blink/public/common/user_agent/user_agent_metadata.h	2020-04-16 02:35:17.575562336 +0200
+@@ -5,6 +5,7 @@
+ #ifndef THIRD_PARTY_BLINK_PUBLIC_COMMON_USER_AGENT_USER_AGENT_METADATA_H_
+ #define THIRD_PARTY_BLINK_PUBLIC_COMMON_USER_AGENT_USER_AGENT_METADATA_H_
+ 
++#include <iterator>
+ #include <string>
+ 
+ #include "base/optional.h"
+diff -up chromium-83.0.4103.7/third_party/blink/renderer/bindings/core/v8/serialization/serialized_script_value.h.omv~ chromium-83.0.4103.7/third_party/blink/renderer/bindings/core/v8/serialization/serialized_script_value.h
+--- chromium-83.0.4103.7/third_party/blink/renderer/bindings/core/v8/serialization/serialized_script_value.h.omv~	2020-04-16 17:42:21.913168530 +0200
++++ chromium-83.0.4103.7/third_party/blink/renderer/bindings/core/v8/serialization/serialized_script_value.h	2020-04-16 17:44:07.175860076 +0200
+@@ -270,10 +270,14 @@ class CORE_EXPORT SerializedScriptValue
+   bool IsLockedToAgentCluster() const {
+     return !wasm_modules_.IsEmpty() ||
+            !shared_array_buffers_contents_.IsEmpty() ||
++#if 0 // FIXME
+            std::any_of(attachments_.begin(), attachments_.end(),
+                        [](const auto& entry) {
+                          return entry.value->IsLockedToAgentCluster();
+                        });
++#else
++    0;
++#endif
+   }
+ 
+   // Returns true after serializing script values that remote origins cannot
+diff -up chromium-83.0.4103.7/third_party/blink/renderer/core/html/trust_token_attribute_parsing.h.omv~ chromium-83.0.4103.7/third_party/blink/renderer/core/html/trust_token_attribute_parsing.h
+--- chromium-83.0.4103.7/third_party/blink/renderer/core/html/trust_token_attribute_parsing.h.omv~	2020-04-16 19:39:30.411760144 +0200
++++ chromium-83.0.4103.7/third_party/blink/renderer/core/html/trust_token_attribute_parsing.h	2020-04-16 19:39:36.263974228 +0200
+@@ -5,6 +5,7 @@
+ #ifndef THIRD_PARTY_BLINK_RENDERER_CORE_HTML_TRUST_TOKEN_ATTRIBUTE_PARSING_H_
+ #define THIRD_PARTY_BLINK_RENDERER_CORE_HTML_TRUST_TOKEN_ATTRIBUTE_PARSING_H_
+ 
++#include <memory>
+ #include "base/optional.h"
+ #include "services/network/public/mojom/trust_tokens.mojom-blink-forward.h"
+ #include "third_party/blink/renderer/core/core_export.h"
+diff -up chromium-83.0.4103.7/third_party/blink/renderer/core/layout/ng/ng_physical_container_fragment.cc.omv~ chromium-83.0.4103.7/third_party/blink/renderer/core/layout/ng/ng_physical_container_fragment.cc
+--- chromium-83.0.4103.7/third_party/blink/renderer/core/layout/ng/ng_physical_container_fragment.cc.omv~	2020-04-16 21:07:13.133570379 +0200
++++ chromium-83.0.4103.7/third_party/blink/renderer/core/layout/ng/ng_physical_container_fragment.cc	2020-04-16 21:07:23.805265954 +0200
+@@ -112,6 +112,7 @@ void NGPhysicalContainerFragment::AddOut
+         }
+         DCHECK(item.IsText());
+       }
++#if 0
+       // Don't add |Children()|. If |this| has |NGFragmentItems|, children are
+       // either line box, which we already handled in items, or OOF, which we
+       // should ignore.
+@@ -120,6 +121,7 @@ void NGPhysicalContainerFragment::AddOut
+                            return child->IsLineBox() ||
+                                   child->IsOutOfFlowPositioned();
+                          }));
++#endif
+       return;
+     }
+   }
+diff -up chromium-83.0.4103.7/ui/accessibility/ax_tree.cc.omv~ chromium-83.0.4103.7/ui/accessibility/ax_tree.cc
+--- chromium-83.0.4103.7/ui/accessibility/ax_tree.cc.omv~	2020-04-15 23:52:11.058657504 +0200
++++ chromium-83.0.4103.7/ui/accessibility/ax_tree.cc	2020-04-15 23:52:24.700803972 +0200
+@@ -567,15 +567,6 @@ struct AXTreeUpdateState {
+   const AXTree& tree;
+ };
+ 
+-struct AXTree::NodeSetSizePosInSetInfo {
+-  NodeSetSizePosInSetInfo() = default;
+-  ~NodeSetSizePosInSetInfo() = default;
+-
+-  int32_t pos_in_set = 0;
+-  int32_t set_size = 0;
+-  base::Optional<int> lowest_hierarchical_level;
+-};
+-
+ struct AXTree::OrderedSetContent {
+   explicit OrderedSetContent(const AXNode* ordered_set = nullptr)
+       : ordered_set_(ordered_set) {}
+diff -up chromium-83.0.4103.7/ui/accessibility/ax_tree.h.omv~ chromium-83.0.4103.7/ui/accessibility/ax_tree.h
+--- chromium-83.0.4103.7/ui/accessibility/ax_tree.h.omv~	2020-04-15 23:51:24.248154880 +0200
++++ chromium-83.0.4103.7/ui/accessibility/ax_tree.h	2020-04-15 23:53:28.242486088 +0200
+@@ -328,7 +328,14 @@ class AX_EXPORT AXTree : public AXNode::
+   bool enable_extra_mac_nodes_ = false;
+ 
+   // Contains pos_in_set and set_size data for an AXNode.
+-  struct NodeSetSizePosInSetInfo;
++  struct NodeSetSizePosInSetInfo {
++    NodeSetSizePosInSetInfo() = default;
++    ~NodeSetSizePosInSetInfo() = default;
++
++    int32_t pos_in_set = 0;
++    int32_t set_size = 0;
++    base::Optional<int> lowest_hierarchical_level;
++  };
+ 
+   // Represents the content of an ordered set which includes the ordered set
+   // items and the ordered set container if it exists.
diff --git a/chromium-83-disable-fontconfig-cache-magic.patch b/chromium-83-disable-fontconfig-cache-magic.patch
new file mode 100644
index 0000000..e833799
--- /dev/null
+++ b/chromium-83-disable-fontconfig-cache-magic.patch
@@ -0,0 +1,13 @@
+diff -up chromium-83.0.4103.7/base/test/BUILD.gn.9~ chromium-83.0.4103.7/base/test/BUILD.gn
+--- chromium-83.0.4103.7/base/test/BUILD.gn.9~	2020-04-15 00:44:37.601219031 +0200
++++ chromium-83.0.4103.7/base/test/BUILD.gn	2020-04-15 00:45:03.905130488 +0200
+@@ -188,9 +188,6 @@ static_library("test_support") {
+     sources += [ "test_file_util_linux.cc" ]
+     public_deps += [ ":fontconfig_util_linux" ]
+     data_deps = [ "//third_party/test_fonts" ]
+-    if (current_toolchain == host_toolchain) {
+-      data_deps += [ ":do_generate_fontconfig_caches" ]
+-    }
+   }
+ 
+   if (is_mac) {
diff --git a/chromium-73.0.3683.75-norar.patch b/chromium-83-norar.patch
similarity index 60%
rename from chromium-73.0.3683.75-norar.patch
rename to chromium-83-norar.patch
index 6067564..b135998 100644
--- a/chromium-73.0.3683.75-norar.patch
+++ b/chromium-83-norar.patch
@@ -1,7 +1,7 @@
-diff -up chromium-81.0.4044.9/chrome/common/safe_browsing/BUILD.gn.8~ chromium-81.0.4044.9/chrome/common/safe_browsing/BUILD.gn
---- chromium-81.0.4044.9/chrome/common/safe_browsing/BUILD.gn.8~	2020-02-09 21:59:02.213007251 +0100
-+++ chromium-81.0.4044.9/chrome/common/safe_browsing/BUILD.gn	2020-02-09 22:24:02.894908983 +0100
-@@ -72,39 +72,6 @@ if (safe_browsing_mode == 1) {
+diff -up chromium-83.0.4103.7/chrome/common/safe_browsing/BUILD.gn.omv~ chromium-83.0.4103.7/chrome/common/safe_browsing/BUILD.gn
+--- chromium-83.0.4103.7/chrome/common/safe_browsing/BUILD.gn.omv~	2020-04-15 01:15:08.911005377 +0200
++++ chromium-83.0.4103.7/chrome/common/safe_browsing/BUILD.gn	2020-04-15 01:15:26.456048937 +0200
+@@ -57,39 +57,6 @@ if (safe_browsing_mode == 1) {
      public_deps = [ "//components/safe_browsing/core:csd_proto" ]
    }
  
@@ -14,10 +14,10 @@ diff -up chromium-81.0.4044.9/chrome/common/safe_browsing/BUILD.gn.8~ chromium-8
 -    deps = [
 -      ":archive_analyzer_results",
 -      ":download_type_util",
--      ":file_type_policies",
 -      "//base",
 -      "//base:i18n",
 -      "//components/safe_browsing/core:features",
+-      "//components/safe_browsing/core:file_type_policies",
 -      "//third_party/unrar:unrar",
 -    ]
 -
@@ -41,7 +41,7 @@ diff -up chromium-81.0.4044.9/chrome/common/safe_browsing/BUILD.gn.8~ chromium-8
    source_set("disk_image_type_sniffer_mac") {
      sources = [
        "disk_image_type_sniffer_mac.cc",
-@@ -171,7 +138,6 @@ source_set("safe_browsing") {
+@@ -156,7 +123,6 @@ source_set("safe_browsing") {
        ":archive_analyzer_results",
        ":binary_feature_extractor",
        ":download_type_util",
@@ -49,9 +49,9 @@ diff -up chromium-81.0.4044.9/chrome/common/safe_browsing/BUILD.gn.8~ chromium-8
        "//components/safe_browsing/core:features",
      ]
  
-diff -up chromium-81.0.4044.9/chrome/common/safe_browsing/DEPS.8~ chromium-81.0.4044.9/chrome/common/safe_browsing/DEPS
---- chromium-81.0.4044.9/chrome/common/safe_browsing/DEPS.8~	2020-02-05 22:52:56.000000000 +0100
-+++ chromium-81.0.4044.9/chrome/common/safe_browsing/DEPS	2020-02-09 21:59:02.213007251 +0100
+diff -up chromium-83.0.4103.7/chrome/common/safe_browsing/DEPS.omv~ chromium-83.0.4103.7/chrome/common/safe_browsing/DEPS
+--- chromium-83.0.4103.7/chrome/common/safe_browsing/DEPS.omv~	2020-04-15 01:15:33.091065436 +0200
++++ chromium-83.0.4103.7/chrome/common/safe_browsing/DEPS	2020-04-15 01:15:35.261070835 +0200
 @@ -1,6 +1,5 @@
  include_rules = [
    "+components/safe_browsing",
@@ -59,9 +59,9 @@ diff -up chromium-81.0.4044.9/chrome/common/safe_browsing/DEPS.8~ chromium-81.0.
 -  "+third_party/unrar",
    "+third_party/zlib",
  ]
-diff -up chromium-81.0.4044.9/chrome/services/file_util/safe_archive_analyzer.cc.8~ chromium-81.0.4044.9/chrome/services/file_util/safe_archive_analyzer.cc
---- chromium-81.0.4044.9/chrome/services/file_util/safe_archive_analyzer.cc.8~	2020-02-05 22:52:56.000000000 +0100
-+++ chromium-81.0.4044.9/chrome/services/file_util/safe_archive_analyzer.cc	2020-02-09 21:59:02.213007251 +0100
+diff -up chromium-83.0.4103.7/chrome/services/file_util/safe_archive_analyzer.cc.omv~ chromium-83.0.4103.7/chrome/services/file_util/safe_archive_analyzer.cc
+--- chromium-83.0.4103.7/chrome/services/file_util/safe_archive_analyzer.cc.omv~	2020-04-15 01:15:49.168105472 +0200
++++ chromium-83.0.4103.7/chrome/services/file_util/safe_archive_analyzer.cc	2020-04-15 01:16:06.725149286 +0200
 @@ -46,10 +46,14 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile
  void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file,
                                           base::File temporary_file,
diff --git a/chromium-browser-beta.spec b/chromium-browser-beta.spec
index 7a210b2..0e864e7 100644
--- a/chromium-browser-beta.spec
+++ b/chromium-browser-beta.spec
@@ -30,15 +30,16 @@
 %define    google_default_client_secret RDdr-pHq2gStY4uw0m-zxXeo
 
 %bcond_with	plf
-# crisb - ozone causes a segfault on startup as of 57.0.2987.133
+# crisb - ozone causes a segfault on startup as of 57.0.2987.133, doesn't compile in 80.x
 %bcond_with	ozone
+# Breaks the build as of chromium 83, icu 66.1
 %bcond_with	system_icu
 %bcond_without	system_ffmpeg
 # Temporarily broken, cr_z_* symbols used even when we're supposed to use system minizip
 %bcond_without	system_minizip
 # chromium 58 fails with system vpx 1.6.1
-%bcond_with	system_vpx
-%bcond_with	system_re2
+%bcond_without	system_vpx
+%bcond_without	system_re2
 
 # Always support proprietary codecs
 # or html5 does not work
@@ -50,7 +51,7 @@
 Name: 		chromium-browser-%{channel}
 # Working version numbers can be found at
 # http://omahaproxy.appspot.com/
-Version: 	81.0.4044.26
+Version: 	83.0.4103.14
 Release: 	1%{?extrarelsuffix}
 Summary: 	A fast webkit-based web browser
 Group: 		Networking/WWW
@@ -60,6 +61,10 @@ Source0: 	https://commondatastorage.googleapis.com/chromium-browser-official/chr
 Source1: 	chromium-wrapper
 Source2: 	chromium-browser%{namesuffix}.desktop
 Source3:	master_preferences
+# https://bugs.freedesktop.org/show_bug.cgi?id=106490
+# Workaround from Arch Linux
+# https://aur.archlinux.org/cgit/aur.git/tree/chromium-drirc-disable-10bpc-color-configs.conf?h=chromium-vaapi
+Source4:	chromium-drirc-disable-10bpc-color-configs.conf
 Source100:	%{name}.rpmlintrc
 
 ### Chromium Fedora Patches ###
@@ -78,13 +83,11 @@ Patch4:		https://src.fedoraproject.org/rpms/chromium/raw/master/f/chromium-60.0.
 Patch5:		https://src.fedoraproject.org/rpms/chromium/raw/master/f/chromium-60.0.3112.78-jpeg-nomangle.patch
 # Do not mangle zlib
 Patch6:		https://src.fedoraproject.org/rpms/chromium/raw/master/f/chromium-77.0.3865.75-no-zlib-mangle.patch
-# Do not use unrar code, it is non-free
-Patch7:		https://src.fedoraproject.org/rpms/chromium/raw/master/f/chromium-73.0.3683.75-norar.patch
 # Use Gentoo's Widevine hack
 # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-widevine-r3.patch
 Patch8:		https://src.fedoraproject.org/rpms/chromium/raw/master/f/chromium-71.0.3578.98-widevine-r3.patch
-# Disable fontconfig cache magic that breaks remoting
-Patch9:		https://src.fedoraproject.org/rpms/chromium/raw/master/f/chromium-70.0.3538.67-disable-fontconfig-cache-magic.patch
+# Disable fontconfig cache magic that breaks remoting (originally from Fedora, ported to 81 code base)
+Patch9:		chromium-83-disable-fontconfig-cache-magic.patch
 # drop rsp clobber, which breaks gcc9 (thanks to Jeff Law)
 Patch10:	https://src.fedoraproject.org/rpms/chromium/raw/master/f/chromium-78.0.3904.70-gcc9-drop-rsp-clobber.patch
 # Try to load widevine from other places
@@ -100,7 +103,7 @@ Patch51:	https://src.fedoraproject.org/rpms/chromium/raw/master/f/chromium-76.0.
 # Needs to be submitted.. (ugly hack, needs to be added properly to GN files)
 Patch52:	https://src.fedoraproject.org/rpms/chromium/raw/master/f/chromium-78.0.3904.70-vtable-symbol-undefined.patch
 # https://gitweb.gentoo.org/repo/gentoo.git/tree/www-client/chromium/files/chromium-unbundle-zlib.patch
-Patch53:	https://src.fedoraproject.org/rpms/chromium/raw/master/f/chromium-78.0.3904.70-unbundle-zlib.patch
+Patch53:	chromium-81-unbundle-zlib.patch
 # Needs to be submitted..
 Patch54:	https://src.fedoraproject.org/rpms/chromium/raw/master/f/chromium-77.0.3865.75-gcc-include-memory.patch
 # https://chromium.googlesource.com/chromium/src/+/6b633c4b14850df376d5cec571699018772f358e
@@ -119,13 +122,6 @@ Patch63:	https://src.fedoraproject.org/rpms/chromium/raw/master/f/chromium-79.0.
 # el7 only patch
 #Patch102:	https://src.fedoraproject.org/rpms/chromium/raw/master/f/chromium-79.0.3945.56-el7-noexcept.patch
 
-# Enable VAAPI support on Linux
-# NOTE: This patch will never land upstream
-Patch202:	https://src.fedoraproject.org/rpms/chromium/raw/master/f/enable-vaapi.patch
-Patch203:	https://src.fedoraproject.org/rpms/chromium/raw/master/f/chromium-75.0.3770.80-vaapi-i686-fpermissive.patch
-# Fix compatibility with VA-API library (libva) version 1
-#Patch204:	https://src.fedoraproject.org/rpms/chromium/raw/master/f/chromium-75.0.3770.80-vaapi-libva1-compatibility.patch
-
 # Apply these patches to work around EPEL8 issues
 #Patch300:	https://src.fedoraproject.org/rpms/chromium/raw/master/f/chromium-76.0.3809.132-rhel8-force-disable-use_gnome_keyring.patch
 
@@ -138,20 +134,28 @@ Patch600:	arm_use_right_compiler.patch
 # Arch Linux, fix for compile error with system ICU
 Patch602:	https://raw.githubusercontent.com/archlinuxarm/PKGBUILDs/master/extra/chromium/chromium-system-icu.patch
 
+# Enable VAAPI support on Linux
+# Partially based on https://aur.archlinux.org/packages/chromium-vaapi/
+Patch651:	vdpau-support.patch
+Patch653:	chromium-skia-harmony.patch
+
 # mga
-Patch700:	chromium-69-extra-media.patch
+Patch700:	chromium-81-extra-media.patch
 Patch701:	chromium-69-wmvflvmpg.patch
 Patch702:	chromium-40-sorenson-spark.patch
 
 # omv
 Patch1001:	chromium-64-system-curl.patch
 Patch1002:	chromium-69-no-static-libstdc++.patch
-Patch1003:	chromium-81-clang10.patch
-Patch1004:	chromium-81-compile.patch
+Patch1003:	chromium-83-norar.patch
+#Patch1004:	chromium-80-clang10-libstdc++10.patch
+Patch1005:	chromium-83-compile.patch
+Patch1006:	chromium-81-dont-pretend-vaapi-is-broken.patch
+Patch1007:	chromium-81-enable-gpu-features.patch
 
 # stop so many build warnings
-Patch1006:	chromium-71.0.3578.94-quieten.patch
-Patch1007:	chromium-trace.patch
+Patch1008:	chromium-71.0.3578.94-quieten.patch
+Patch1009:	chromium-trace.patch
 
 Provides: 	%{crname}
 Obsoletes: 	chromium-browser-unstable < 26.0.1410.51
@@ -161,8 +165,6 @@ BuildRequires: 	gperf
 BuildRequires: 	bison
 BuildRequires: 	re2c
 BuildRequires: 	flex
-#BuildRequires: 	v8-devel
-BuildRequires:	java-1.8.0-openjdk-devel
 BuildRequires:	pkgconfig(alsa)
 BuildRequires:	pkgconfig(krb5)
 %if %{with system_re2}
@@ -170,6 +172,7 @@ BuildRequires:	pkgconfig(re2)
 %endif
 BuildRequires:	pkgconfig(com_err)
 BuildRequires:	python2dist(json5)
+BuildRequires:	python2-pkg-resources
 BuildRequires: 	alsa-oss-devel
 BuildRequires:	atomic-devel
 BuildRequires:	harfbuzz-devel
@@ -180,6 +183,7 @@ BuildRequires: 	pkgconfig(expat)
 BuildRequires: 	pkgconfig(glib-2.0)
 BuildRequires: 	pkgconfig(wayland-egl)
 BuildRequires: 	pkgconfig(nss)
+BuildRequires:	pkgconfig(gbm)
 BuildRequires:	pkgconfig(libdrm)
 BuildRequires:	pkgconfig(libglvnd)
 BuildRequires:  pkgconfig(libva)
@@ -245,6 +249,7 @@ BuildRequires:	python2-ply
 BuildRequires:	python2-beautifulsoup4
 BuildRequires:	python2-simplejson
 BuildRequires:	python2-html5lib
+BuildRequires:	jdk-current
 
 %description
 Chromium is a browser that combines a minimal design with sophisticated
@@ -383,10 +388,11 @@ python2 build/linux/unbundle/remove_bundled_libraries.py \
 	'third_party/depot_tools' \
 	'third_party/devscripts' \
 	'third_party/devtools-frontend' \
+	'third_party/devtools-frontend/src/third_party/typescript' \
+	'third_party/devtools-frontend/src/third_party/axe-core' \
 	'third_party/devtools-frontend/src/front_end/third_party/fabricjs' \
+	'third_party/devtools-frontend/src/front_end/third_party/lighthouse' \
 	'third_party/devtools-frontend/src/front_end/third_party/wasmparser' \
-	'third_party/devtools-frontend/src/third_party/axe-core' \
-	'third_party/devtools-frontend/src/third_party/typescript' \
 	'third_party/dom_distiller_js' \
 	'third_party/emoji-segmenter' \
 	'third_party/expat' \
@@ -406,7 +412,9 @@ python2 build/linux/unbundle/remove_bundled_libraries.py \
 	'third_party/harfbuzz-ng' \
 	'third_party/hunspell' \
 	'third_party/iccjpeg' \
+%if ! %{with system_icu}
 	'third_party/icu' \
+%endif
 	'third_party/inspector_protocol' \
 	'third_party/jinja2' \
 	'third_party/jsoncpp' \
@@ -439,9 +447,13 @@ python2 build/linux/unbundle/remove_bundled_libraries.py \
 	'third_party/libyuv' \
 	'third_party/lss' \
 	'third_party/lzma_sdk' \
+	'third_party/mako' \
 	'third_party/markupsafe' \
 	'third_party/mesa' \
 	'third_party/metrics_proto' \
+%if %{with ozone}
+	'third_party/minigbm' \
+%endif
 	'third_party/modp_b64' \
 	'third_party/nasm' \
 	'third_party/node' \
@@ -476,6 +488,7 @@ python2 build/linux/unbundle/remove_bundled_libraries.py \
 	'third_party/re2' \
 %endif
 	'third_party/rnnoise' \
+	'third_party/schema_org' \
 	'third_party/s2cellid' \
 	'third_party/simplejson' \
 	'third_party/sinonjs' \
@@ -491,6 +504,7 @@ python2 build/linux/unbundle/remove_bundled_libraries.py \
 	'third_party/SPIRV-Tools' \
 	'third_party/sqlite' \
 	'third_party/swiftshader' \
+	'third_party/swiftshader/third_party/astc-encoder' \
 	'third_party/swiftshader/third_party/llvm-subzero' \
 	'third_party/swiftshader/third_party/llvm-7.0' \
 	'third_party/swiftshader/third_party/marl' \
@@ -501,6 +515,9 @@ python2 build/linux/unbundle/remove_bundled_libraries.py \
         'third_party/usb_ids' \
 	'third_party/usrsctp' \
 	'third_party/vulkan' \
+%if %{with ozone}
+	'third_party/wayland' \
+%endif
 	'third_party/web-animations-js' \
 	'third_party/webdriver' \
 	'third_party/webrtc' \
@@ -517,7 +534,6 @@ python2 build/linux/unbundle/remove_bundled_libraries.py \
         'third_party/yasm' \
         'third_party/zlib' \
 	'third_party/zlib/google' \
-	'tools/gn/src/base/third_party/icu' \
 	'tools/grit/third_party/six' \
 	'url/third_party/mozilla' \
 	'v8/src/third_party/siphash' \
@@ -525,6 +541,7 @@ python2 build/linux/unbundle/remove_bundled_libraries.py \
 	'v8/src/third_party/valgrind' \
 	'v8/third_party/v8' \
 	'v8/third_party/inspector_protocol' \
+	'tools/gn/src/base/third_party/icu' \
 	--do-remove
 
 
@@ -539,6 +556,8 @@ if [ ! -f chrome/test/data/webui/i18n_process_css_test.html ]; then
 fi
 
 %build
+. %{_sysconfdir}/profile.d/90java.sh
+
 %ifarch %{arm}
 # Use linker flags to reduce memory consumption on low-mem architectures
 %global optflags %(echo %{optflags} | sed -e 's/-g /-g0 /' -e 's/-gdwarf-4//')
@@ -548,6 +567,10 @@ export PATH=$PWD/bfd:$PATH
 # Use linker flags to reduce memory consumption
 %global ldflags %{ldflags} -fuse-ld=bfd -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
 %endif
+%ifarch %{ix86}
+# Workaround for build failure
+%global ldflags %{ldflags} -Wl,-z,notext
+%endif
 
 export CC=clang
 export CXX=clang++
@@ -563,13 +586,23 @@ CHROMIUM_CORE_GN_DEFINES+=" use_system_libjpeg=true "
 CHROMIUM_CORE_GN_DEFINES+=" use_system_lcms2=true "
 CHROMIUM_CORE_GN_DEFINES+=" use_system_libpng=true "
 CHROMIUM_CORE_GN_DEFINES+=" use_system_harfbuzz=true "
+CHROMIUM_CORE_GN_DEFINES+=" use_system_libdrm=true "
+CHROMIUM_CORE_GN_DEFINES+=" use_system_minigbm=true "
+CHROMIUM_CORE_GN_DEFINES+=" use_system_wayland=true "
+CHROMIUM_CORE_GN_DEFINES+=" use_xkbcommon=true "
+#CHROMIUM_CORE_GN_DEFINES+=" use_glib=false use_atk=false "
+#CHROMIUM_CORE_GN_DEFINES+=" use_gtk=false "
+%if %{with system_icu}
+CHROMIUM_CORE_GN_DEFINES+=" use_system_icu=true "
+%else
+CHROMIUM_CORE_GN_DEFINES+=" icu_use_data_file=true"
+%endif
 CHROMIUM_CORE_GN_DEFINES+=" use_gnome_keyring=false "
 CHROMIUM_CORE_GN_DEFINES+=" fatal_linker_warnings=false "
 CHROMIUM_CORE_GN_DEFINES+=" system_libdir=\"%{_lib}\""
 CHROMIUM_CORE_GN_DEFINES+=" use_allocator=\"none\""
 CHROMIUM_CORE_GN_DEFINES+=" use_aura=true "
 #CHROMIUM_CORE_GN_DEFINES+=" use_gio=true"
-CHROMIUM_CORE_GN_DEFINES+=" icu_use_data_file=true"
 %if %{with ozone}
 CHROMIUM_CORE_GN_DEFINES+=" use_ozone=true "
 %endif
@@ -600,7 +633,7 @@ CHROMIUM_CORE_GN_DEFINES+=" custom_toolchain=\"//build/toolchain/linux/unbundle:
 CHROMIUM_CORE_GN_DEFINES+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
 CHROMIUM_CORE_GN_DEFINES+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:default\""
 
-CHROMIUM_BROWSER_GN_DEFINES="use_pulseaudio=true icu_use_data_file=true"
+CHROMIUM_BROWSER_GN_DEFINES="use_pulseaudio=true link_pulseaudio=true"
 CHROMIUM_BROWSER_GN_DEFINES+=" enable_nacl=false"
 CHROMIUM_BROWSER_GN_DEFINES+=" is_component_ffmpeg=true"
 CHROMIUM_BROWSER_GN_DEFINES+=" enable_hangout_services_extension=true"
@@ -609,12 +642,6 @@ CHROMIUM_BROWSER_GN_DEFINES+=" enable_widevine=true"
 CHROMIUM_BROWSER_GN_DEFINES+=" enable_webrtc=true"
 CHROMIUM_BROWSER_GN_DEFINES+=" use_vaapi=true"
 
-CHROMIUM_HEADLESS_GN_DEFINES=' use_ozone=true ozone_auto_platforms=false ozone_platform="headless" ozone_platform_headless=true'
-CHROMIUM_HEADLESS_GN_DEFINES+=' headless_use_embedded_resources=true icu_use_data_file=false v8_use_external_startup_data=false'
-CHROMIUM_HEADLESS_GN_DEFINES+=' enable_nacl=false enable_print_preview=false enable_remoting=false use_alsa=false'
-CHROMIUM_HEADLESS_GN_DEFINES+=' use_cups=false use_dbus=false use_gio=false use_kerberos=false use_libpci=false'
-CHROMIUM_HEADLESS_GN_DEFINES+=' use_pulseaudio=false use_udev=false'
-
 gn_system_libraries="
     flac
     fontconfig
@@ -624,7 +651,6 @@ gn_system_libraries="
     libjpeg
     libusb
     libwebp
-    libxml
     libxslt
     snappy
     yasm
@@ -726,6 +752,10 @@ ln -s %{_libdir}/libEGL.so.1.0.0 %{buildroot}%{_libdir}/%{name}/swiftshader/libE
 
 find %{buildroot} -name "*.nexe" -exec strip {} \;
 
+# drirc workaround for VAAPI
+mkdir -p %{buildroot}%{_datadir}/drirc.d/
+cp %{S:4} %{buildroot}%{_datadir}/drirc.d/10-%{name}.conf
+
 %if "%{channel}" == "stable"
 %files -n chromium-browser
 %endif
@@ -733,6 +763,7 @@ find %{buildroot} -name "*.nexe" -exec strip {} \;
 %files
 %doc LICENSE AUTHORS
 %config %{_sysconfdir}/chromium
+%{_datadir}/drirc.d/10-%{name}.conf
 %{_bindir}/%{name}
 %{_libdir}/%{name}/*.bin
 %{_libdir}/%{name}/chromium-wrapper
diff --git a/chromium-drirc-disable-10bpc-color-configs.conf b/chromium-drirc-disable-10bpc-color-configs.conf
new file mode 100644
index 0000000..c079ba1
--- /dev/null
+++ b/chromium-drirc-disable-10bpc-color-configs.conf
@@ -0,0 +1,21 @@
+<!--
+
+Disable 10 bpc color configs; fixes VAAPI playback.
+
+https://bugs.freedesktop.org/show_bug.cgi?id=106490
+
+-->
+
+<driconf>
+    <device>
+        <application name="Chromium" executable="chromium">
+            <option name="allow_rgb10_configs" value="false" />
+        </application>
+        <application name="Chromium" executable="chromium-browser-stable">
+            <option name="allow_rgb10_configs" value="false" />
+        </application>
+        <application name="Chromium" executable="chrome">
+            <option name="allow_rgb10_configs" value="false" />
+        </application>
+    </device>
+</driconf>
diff --git a/chromium-skia-harmony.patch b/chromium-skia-harmony.patch
new file mode 100644
index 0000000..ecd491e
--- /dev/null
+++ b/chromium-skia-harmony.patch
@@ -0,0 +1,14 @@
+--- cr/third_party/skia/src/ports/SkFontHost_FreeType.cpp.orig	2019-07-19 11:08:34.770972665 +0000
++++ cr/third_party/skia/src/ports/SkFontHost_FreeType.cpp	2019-07-19 11:08:44.274442065 +0000
+@@ -128,9 +128,9 @@ public:
+         : fGetVarDesignCoordinates(nullptr)
+         , fGetVarAxisFlags(nullptr)
+         , fLibrary(nullptr)
+-        , fIsLCDSupported(false)
++        , fIsLCDSupported(true)
+         , fLightHintingIsYOnly(false)
+-        , fLCDExtra(0)
++        , fLCDExtra(2)
+     {
+         if (FT_New_Library(&gFTMemory, &fLibrary)) {
+             return;
diff --git a/chromium-system-icu.patch b/chromium-system-icu.patch
index 0179259..7166839 100644
--- a/chromium-system-icu.patch
+++ b/chromium-system-icu.patch
@@ -17,3 +17,31 @@ index 28fb6a9..bb4dbd7 100644
 
  // Freezed trie tree, see character_property_data_generator.cc.
  extern const int32_t kSerializedCharacterDataSize;
+diff -up chromium-80.0.3987.132/base/BUILD.gn.omv~ chromium-80.0.3987.132/base/BUILD.gn
+--- chromium-80.0.3987.132/base/BUILD.gn.omv~	2020-03-11 21:57:54.959321632 +0100
++++ chromium-80.0.3987.132/base/BUILD.gn	2020-03-11 21:58:24.750320187 +0100
+@@ -2945,7 +2945,7 @@ test("base_unittests") {
+     ]
+   }
+ 
+-  if (icu_use_data_file) {
++  if (false) {
+     if (is_android) {
+       deps += [ "//third_party/icu:icu_extra_assets" ]
+     } else {
+diff -up chromium-80.0.3987.132/chrome/browser/ui/views/native_file_system/native_file_system_usage_bubble_view.cc.omv~ chromium-80.0.3987.132/chrome/browser/ui/views/native_file_system/native_file_system_usage_bubble_view.cc
+--- chromium-80.0.3987.132/chrome/browser/ui/views/native_file_system/native_file_system_usage_bubble_view.cc.omv~	2020-03-12 04:13:35.334228057 +0100
++++ chromium-80.0.3987.132/chrome/browser/ui/views/native_file_system/native_file_system_usage_bubble_view.cc	2020-03-12 04:13:53.916227156 +0100
+@@ -26,9 +26,9 @@
+ #include "content/public/browser/render_frame_host.h"
+ #include "content/public/browser/render_process_host.h"
+ #include "content/public/browser/web_contents.h"
+-#include "third_party/icu/source/common/unicode/unistr.h"
+-#include "third_party/icu/source/common/unicode/utypes.h"
+-#include "third_party/icu/source/i18n/unicode/listformatter.h"
++#include <unicode/unistr.h>
++#include <unicode/utypes.h>
++#include <unicode/listformatter.h>
+ #include "ui/base/l10n/l10n_util.h"
+ #include "ui/gfx/paint_vector_icon.h"
+ #include "ui/views/controls/button/image_button.h"
diff --git a/enable-vaapi.patch b/enable-vaapi.patch
deleted file mode 100644
index 6fe8408..0000000
--- a/enable-vaapi.patch
+++ /dev/null
@@ -1,90 +0,0 @@
-diff -up chromium-81.0.4044.9/chrome/browser/about_flags.cc.23~ chromium-81.0.4044.9/chrome/browser/about_flags.cc
---- chromium-81.0.4044.9/chrome/browser/about_flags.cc.23~	2020-02-05 22:54:11.000000000 +0100
-+++ chromium-81.0.4044.9/chrome/browser/about_flags.cc	2020-02-09 23:15:10.037708142 +0100
-@@ -1892,7 +1892,7 @@ const FeatureEntry kFeatureEntries[] = {
-         "disable-accelerated-video-decode",
-         flag_descriptions::kAcceleratedVideoDecodeName,
-         flag_descriptions::kAcceleratedVideoDecodeDescription,
--        kOsMac | kOsWin | kOsCrOS | kOsAndroid,
-+        kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
-         SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
-     },
-     {
-@@ -2324,12 +2324,12 @@ const FeatureEntry kFeatureEntries[] = {
-      FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)},
- #endif  // !defined(OS_ANDROID)
- #endif  // ENABLE_VR
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
-     {"disable-accelerated-mjpeg-decode",
-      flag_descriptions::kAcceleratedMjpegDecodeName,
--     flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
-+     flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS | kOsLinux,
-      SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
--#endif  // OS_CHROMEOS
-+#endif  // OS_CHROMEOS || OS_LINUX
-     {"system-keyboard-lock", flag_descriptions::kSystemKeyboardLockName,
-      flag_descriptions::kSystemKeyboardLockDescription, kOsDesktop,
-      FEATURE_VALUE_TYPE(features::kSystemKeyboardLock)},
-diff -up chromium-81.0.4044.9/chrome/browser/flag_descriptions.cc.23~ chromium-81.0.4044.9/chrome/browser/flag_descriptions.cc
---- chromium-81.0.4044.9/chrome/browser/flag_descriptions.cc.23~	2020-02-05 22:54:11.000000000 +0100
-+++ chromium-81.0.4044.9/chrome/browser/flag_descriptions.cc	2020-02-09 23:15:10.038708142 +0100
-@@ -2972,16 +2972,20 @@ const char kMetalDescription[] =
- 
- #endif
- 
--// Chrome OS -------------------------------------------------------------------
-+// Chrome OS & Linux -----------------------------------------------------------
- 
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
- 
- const char kAcceleratedMjpegDecodeName[] =
-     "Hardware-accelerated mjpeg decode for captured frame";
- const char kAcceleratedMjpegDecodeDescription[] =
-     "Enable hardware-accelerated mjpeg decode for captured frame where "
-     "available.";
-+#endif
- 
-+// Chrome OS -------------------------------------------------------------------
-+
-+#if defined(OS_CHROMEOS)
- const char kAggregatedMlAppRankingName[] = "Rank suggested apps with ML.";
- const char kAggregatedMlAppRankingDescription[] =
-     "Use the aggregated ML model to rank the suggested apps.";
-diff -up chromium-81.0.4044.9/chrome/browser/flag_descriptions.h.23~ chromium-81.0.4044.9/chrome/browser/flag_descriptions.h
---- chromium-81.0.4044.9/chrome/browser/flag_descriptions.h.23~	2020-02-05 22:54:11.000000000 +0100
-+++ chromium-81.0.4044.9/chrome/browser/flag_descriptions.h	2020-02-09 23:15:10.039708142 +0100
-@@ -1717,13 +1717,17 @@ extern const char kMetalDescription[];
- 
- #endif  // defined(OS_MACOSX)
- 
--// Chrome OS ------------------------------------------------------------------
-+// Chrome OS & Linux ----------------------------------------------------------
- 
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
- 
- extern const char kAcceleratedMjpegDecodeName[];
- extern const char kAcceleratedMjpegDecodeDescription[];
- 
-+#endif
-+
-+// Chrome OS ------------------------------------------------------------------
-+#if defined(OS_CHROMEOS)
- extern const char kAggregatedMlAppRankingName[];
- extern const char kAggregatedMlAppRankingDescription[];
- 
-diff -up chromium-81.0.4044.9/gpu/config/software_rendering_list.json.23~ chromium-81.0.4044.9/gpu/config/software_rendering_list.json
---- chromium-81.0.4044.9/gpu/config/software_rendering_list.json.23~	2020-02-09 23:15:10.040708142 +0100
-+++ chromium-81.0.4044.9/gpu/config/software_rendering_list.json	2020-02-09 23:25:04.617669208 +0100
-@@ -337,7 +337,8 @@
-     },
-     {
-       "id": 48,
--      "description": "Accelerated video decode is unavailable on Linux",
-+      "description": "Accelerated VA-API video decode is not supported on NVIDIA platforms",
-+      "vendor_id": "0x10de",
-       "cr_bugs": [137247, 1032907],
-       "os": {
-         "type": "linux"
diff --git a/vdpau-support.patch b/vdpau-support.patch
new file mode 100644
index 0000000..d0d849a
--- /dev/null
+++ b/vdpau-support.patch
@@ -0,0 +1,78 @@
+diff -up chromium-81.0.4044.92/media/gpu/vaapi/vaapi_video_decode_accelerator.cc.28~ chromium-81.0.4044.92/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
+--- chromium-81.0.4044.92/media/gpu/vaapi/vaapi_video_decode_accelerator.cc.28~	2020-04-03 06:11:34.000000000 +0200
++++ chromium-81.0.4044.92/media/gpu/vaapi/vaapi_video_decode_accelerator.cc	2020-04-14 16:27:40.623165963 +0200
+@@ -712,6 +712,7 @@ void VaapiVideoDecodeAccelerator::Assign
+   // |vpp_vaapi_wrapper_| for VaapiPicture to DownloadFromSurface() the VA's
+   // internal decoded frame.
+   if (buffer_allocation_mode_ != BufferAllocationMode::kNone &&
++      buffer_allocation_mode_ != BufferAllocationMode::kWrapVdpau &&
+       !vpp_vaapi_wrapper_) {
+     vpp_vaapi_wrapper_ = VaapiWrapper::Create(
+         VaapiWrapper::kVideoProcess, VAProfileNone,
+@@ -743,7 +744,8 @@ void VaapiVideoDecodeAccelerator::Assign
+             : gfx::Size();
+ 
+     std::unique_ptr<VaapiPicture> picture = vaapi_picture_factory_->Create(
+-        (buffer_allocation_mode_ == BufferAllocationMode::kNone)
++        ((buffer_allocation_mode_ == BufferAllocationMode::kNone) ||
++	 (buffer_allocation_mode_ == BufferAllocationMode::kWrapVdpau))
+             ? vaapi_wrapper_
+             : vpp_vaapi_wrapper_,
+         make_context_current_cb_, bind_image_cb_, buffer, size_to_bind);
+@@ -1199,6 +1201,12 @@ VaapiVideoDecodeAccelerator::GetSupporte
+ 
+ VaapiVideoDecodeAccelerator::BufferAllocationMode
+ VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() {
++  // NVIDIA blobs use VDPAU
++  if (VaapiWrapper::GetImplementationType() == VAImplementation::kNVIDIAVDPAU) {
++    LOG(INFO) << "VA-API driver on VDPAU backend";
++    return BufferAllocationMode::kWrapVdpau;
++  }
++
+   // TODO(crbug.com/912295): Enable a better BufferAllocationMode for IMPORT
+   // |output_mode_| as well.
+   if (output_mode_ == VideoDecodeAccelerator::Config::OutputMode::IMPORT)
+@@ -1211,7 +1219,7 @@ VaapiVideoDecodeAccelerator::DecideBuffe
+   // depends on the bitstream and sometimes it's not enough to cover the amount
+   // of frames needed by the client pipeline (see b/133733739).
+   // TODO(crbug.com/911754): Enable for VP9 Profile 2.
+-  if (IsGeminiLakeOrLater() &&
++  if (false && IsGeminiLakeOrLater() &&
+       (profile_ == VP9PROFILE_PROFILE0 || profile_ == VP8PROFILE_ANY)) {
+     // Add one to the reference frames for the one being currently egressed, and
+     // an extra allocation for both |client_| and |decoder_|, see
+diff -up chromium-81.0.4044.92/media/gpu/vaapi/vaapi_video_decode_accelerator.h.28~ chromium-81.0.4044.92/media/gpu/vaapi/vaapi_video_decode_accelerator.h
+--- chromium-81.0.4044.92/media/gpu/vaapi/vaapi_video_decode_accelerator.h.28~	2020-04-03 06:11:34.000000000 +0200
++++ chromium-81.0.4044.92/media/gpu/vaapi/vaapi_video_decode_accelerator.h	2020-04-14 16:24:00.916251409 +0200
+@@ -208,6 +208,7 @@ class MEDIA_GPU_EXPORT VaapiVideoDecodeA
+     // Using |client_|s provided PictureBuffers and as many internally
+     // allocated.
+     kNormal,
++    kWrapVdpau,
+   };
+ 
+   // Decides the concrete buffer allocation mode, depending on the hardware
+diff -up chromium-81.0.4044.92/media/gpu/vaapi/vaapi_wrapper.cc.28~ chromium-81.0.4044.92/media/gpu/vaapi/vaapi_wrapper.cc
+--- chromium-81.0.4044.92/media/gpu/vaapi/vaapi_wrapper.cc.28~	2020-04-03 06:11:34.000000000 +0200
++++ chromium-81.0.4044.92/media/gpu/vaapi/vaapi_wrapper.cc	2020-04-14 16:24:00.916251409 +0200
+@@ -133,6 +133,9 @@ media::VAImplementation VendorStringToIm
+   } else if (base::StartsWith(va_vendor_string, "Intel iHD driver",
+                               base::CompareCase::SENSITIVE)) {
+     return media::VAImplementation::kIntelIHD;
++  } else if (base::StartsWith(va_vendor_string, "Splitted-Desktop Systems VDPAU",
++                              base::CompareCase::SENSITIVE)) {
++    return media::VAImplementation::kNVIDIAVDPAU;
+   }
+   return media::VAImplementation::kOther;
+ }
+diff -up chromium-81.0.4044.92/media/gpu/vaapi/vaapi_wrapper.h.28~ chromium-81.0.4044.92/media/gpu/vaapi/vaapi_wrapper.h
+--- chromium-81.0.4044.92/media/gpu/vaapi/vaapi_wrapper.h.28~	2020-04-03 06:11:34.000000000 +0200
++++ chromium-81.0.4044.92/media/gpu/vaapi/vaapi_wrapper.h	2020-04-14 16:24:00.916251409 +0200
+@@ -80,6 +80,7 @@ enum class VAImplementation {
+   kIntelIHD,
+   kOther,
+   kInvalid,
++  kNVIDIAVDPAU,
+ };
+ 
+ // This class handles VA-API calls and ensures proper locking of VA-API calls
Not Available

benbullard79 [@T] cox.net*Should* be OK1682d 16hrs
benbullard79 [@T] cox.netNo Comment.1679d 16hrs