From 7f67f33670b5e024fd5f853fa5d27a8d119f6551 Mon Sep 17 00:00:00 2001 From: Peter Bui Date: Thu, 19 Nov 2020 08:06:02 -0500 Subject: [PATCH 1/2] chromium: update to 87.0.4280.66. [ci skip] - Built for x86_64, x86_64-musl, i686. - Tested on x86_64. --- .../files/musl-patches/no-mallinfo.patch | 10 +- .../patches/chromium-86-nearby-include.patch | 24 --- .../chromium-87-CursorFactory-include.patch | 36 +++++ ...-87-ServiceWorkerContainerHost-crash.patch | 22 +++ .../chromium-87-openscreen-include.patch | 25 ++++ ...remove-unsupported-compiler-warnings.patch | 22 +-- ...le-accelerated-video-decode-on-Linux.patch | 43 ------ ...-end-iterator-usage-in-CookieMonster.patch | 78 ---------- ...k-to-the-i965-driver-if-we-re-on-iHD.patch | 139 ------------------ ...move-dead-reloc-in-nonalloc-LD-flags.patch | 37 ----- ...roto-fix-underflow-in-Fp1616ToDouble.patch | 37 ----- .../chromium/patches/xxx-ppc64le-libvpx.patch | 9 -- .../patches/xxx-ppc64le-support.patch | 26 ++-- srcpkgs/chromium/template | 4 +- 14 files changed, 104 insertions(+), 408 deletions(-) delete mode 100644 srcpkgs/chromium/patches/chromium-86-nearby-include.patch create mode 100644 srcpkgs/chromium/patches/chromium-87-CursorFactory-include.patch create mode 100644 srcpkgs/chromium/patches/chromium-87-ServiceWorkerContainerHost-crash.patch create mode 100644 srcpkgs/chromium/patches/chromium-87-openscreen-include.patch delete mode 100644 srcpkgs/chromium/patches/upstream-check-for-enable-accelerated-video-decode-on-Linux.patch delete mode 100644 srcpkgs/chromium/patches/upstream-fix-invalid-end-iterator-usage-in-CookieMonster.patch delete mode 100644 srcpkgs/chromium/patches/upstream-only-fall-back-to-the-i965-driver-if-we-re-on-iHD.patch delete mode 100644 srcpkgs/chromium/patches/upstream-remove-dead-reloc-in-nonalloc-LD-flags.patch delete mode 100644 srcpkgs/chromium/patches/upstream-xproto-fix-underflow-in-Fp1616ToDouble.patch diff --git a/srcpkgs/chromium/files/musl-patches/no-mallinfo.patch b/srcpkgs/chromium/files/musl-patches/no-mallinfo.patch index 61d5d7a77ca..254a1f632da 100644 --- a/srcpkgs/chromium/files/musl-patches/no-mallinfo.patch +++ b/srcpkgs/chromium/files/musl-patches/no-mallinfo.patch @@ -9,14 +9,14 @@ struct mallinfo info = mallinfo(); DCHECK_GE(info.arena + info.hblkhd, info.uordblks); ---- base/process/process_metrics_posix.cc.orig 2019-10-24 11:10:48.553159245 -0400 -+++ base/process/process_metrics_posix.cc 2019-10-24 11:14:29.025025854 -0400 -@@ -110,14 +110,14 @@ +--- base/process/process_metrics_posix.cc.orig 2020-11-18 23:50:33.958223497 -0500 ++++ base/process/process_metrics_posix.cc 2020-11-18 23:53:52.024589316 -0500 +@@ -119,14 +119,14 @@ malloc_statistics_t stats = {0}; malloc_zone_statistics(nullptr, &stats); return stats.size_in_use; --#elif defined(OS_LINUX) || defined(OS_ANDROID) -+#elif defined(__GLIBC__) || defined(OS_ANDROID) +-#elif defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_ANDROID) ++#elif defined(__GLIBC__) || defined(OS_CHROMEOS) || defined(OS_ANDROID) struct mallinfo minfo = mallinfo(); #if BUILDFLAG(USE_TCMALLOC) return minfo.uordblks; diff --git a/srcpkgs/chromium/patches/chromium-86-nearby-include.patch b/srcpkgs/chromium/patches/chromium-86-nearby-include.patch deleted file mode 100644 index b200a7ebd96..00000000000 --- a/srcpkgs/chromium/patches/chromium-86-nearby-include.patch +++ /dev/null @@ -1,24 +0,0 @@ -From a5b2ee9dd7dfb186e26ec6c0c06c2ae1a9d27195 Mon Sep 17 00:00:00 2001 -From: Stephan Hartmann -Date: Sat, 18 Jul 2020 14:15:50 +0000 -Subject: [PATCH] IWYU: memcpy is defined in cstring - ---- - third_party/nearby/src/cpp/platform_v2/base/byte_array.h | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/third_party/nearby/src/cpp/platform_v2/base/byte_array.h b/third_party/nearby/src/cpp/platform_v2/base/byte_array.h -index ee5d0eb..4b1d79b 100644 ---- third_party/nearby/src/cpp/platform_v2/base/byte_array.h -+++ third_party/nearby/src/cpp/platform_v2/base/byte_array.h -@@ -17,6 +17,7 @@ - - #include - #include -+#include - #include - #include - #include --- -2.26.2 - diff --git a/srcpkgs/chromium/patches/chromium-87-CursorFactory-include.patch b/srcpkgs/chromium/patches/chromium-87-CursorFactory-include.patch new file mode 100644 index 00000000000..d345e584830 --- /dev/null +++ b/srcpkgs/chromium/patches/chromium-87-CursorFactory-include.patch @@ -0,0 +1,36 @@ +From c4f6e8cd34a245c3640b86a91c9694d69594d80b Mon Sep 17 00:00:00 2001 +From: Stephan Hartmann +Date: Wed, 16 Sep 2020 15:05:02 +0000 +Subject: [PATCH] IWYU: ui::CursorFactory is now required independent from + Ozone + +--- + .../ui/views/chrome_browser_main_extra_parts_views_linux.cc | 5 +---- + 1 file changed, 1 insertion(+), 4 deletions(-) + +diff --git a/chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.cc b/chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.cc +index 5a97d61..ccedd2a 100644 +--- chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.cc ++++ chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.cc +@@ -7,6 +7,7 @@ + #include "chrome/browser/themes/theme_service_aura_linux.h" + #include "chrome/browser/ui/browser_list.h" + #include "chrome/browser/ui/views/theme_profile_key.h" ++#include "ui/base/cursor/cursor_factory.h" + #include "ui/display/screen.h" + #include "ui/views/linux_ui/linux_ui.h" + +@@ -15,10 +16,6 @@ + #include "ui/gtk/gtk_ui_delegate.h" + #endif + +-#if defined(USE_OZONE) +-#include "ui/base/cursor/cursor_factory.h" +-#endif +- + #if defined(USE_X11) + #include "ui/gfx/x/connection.h" // nogncheck + #if BUILDFLAG(USE_GTK) +-- +2.26.2 + diff --git a/srcpkgs/chromium/patches/chromium-87-ServiceWorkerContainerHost-crash.patch b/srcpkgs/chromium/patches/chromium-87-ServiceWorkerContainerHost-crash.patch new file mode 100644 index 00000000000..286b86691f1 --- /dev/null +++ b/srcpkgs/chromium/patches/chromium-87-ServiceWorkerContainerHost-crash.patch @@ -0,0 +1,22 @@ +Bug: https://bugs.gentoo.org/750038 +Upstream bug: https://crbug.com/1135070 + +--- content/browser/service_worker/service_worker_container_host.cc ++++ content/browser/service_worker/service_worker_container_host.cc +@@ -626,6 +626,16 @@ + int64_t registration_id) { + DCHECK_CURRENTLY_ON(ServiceWorkerContext::GetCoreThreadId()); + DCHECK(base::Contains(registration_object_hosts_, registration_id)); ++ ++ // ServiceWorkerRegistrationObjectHost to be deleted may have the last reference to ++ // ServiceWorkerRegistration that indirectly owns this ServiceWorkerContainerHost. ++ // If we erase the object host directly from the map, |this| could be deleted ++ // during the map operation and may crash. To avoid the case, we take the ++ // ownership of the object host from the map first, and then erase the entry ++ // from the map. See https://crbug.com/1135070 for details. ++ std::unique_ptr to_be_deleted = ++ std::move(registration_object_hosts_[registration_id]); ++ DCHECK(to_be_deleted); + registration_object_hosts_.erase(registration_id); + } + diff --git a/srcpkgs/chromium/patches/chromium-87-openscreen-include.patch b/srcpkgs/chromium/patches/chromium-87-openscreen-include.patch new file mode 100644 index 00000000000..03ae0e9eda7 --- /dev/null +++ b/srcpkgs/chromium/patches/chromium-87-openscreen-include.patch @@ -0,0 +1,25 @@ +From 0c0af4cabb7490db473cd2c28f069956974a4d98 Mon Sep 17 00:00:00 2001 +From: Stephan Hartmann +Date: Fri, 2 Oct 2020 12:11:58 +0000 +Subject: [PATCH] IWYU: uint8_t is defined in stdint.h + +--- + third_party/openscreen/src/util/crypto/random_bytes.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/third_party/openscreen/src/util/crypto/random_bytes.h b/third_party/openscreen/src/util/crypto/random_bytes.h +index 3cb2fa8..025b52c 100644 +--- third_party/openscreen/src/util/crypto/random_bytes.h ++++ third_party/openscreen/src/util/crypto/random_bytes.h +@@ -7,6 +7,8 @@ + + #include + ++#include ++ + namespace openscreen { + + std::array GenerateRandomBytes16(); +-- +2.26.2 + diff --git a/srcpkgs/chromium/patches/llvm-remove-unsupported-compiler-warnings.patch b/srcpkgs/chromium/patches/llvm-remove-unsupported-compiler-warnings.patch index 86a6e2d8fd7..4286b16b13f 100644 --- a/srcpkgs/chromium/patches/llvm-remove-unsupported-compiler-warnings.patch +++ b/srcpkgs/chromium/patches/llvm-remove-unsupported-compiler-warnings.patch @@ -1,28 +1,12 @@ ---- build/config/compiler/BUILD.gn.orig 2020-10-09 11:20:12.892910174 -0400 -+++ build/config/compiler/BUILD.gn 2020-10-09 11:59:20.403349122 -0400 -@@ -1518,12 +1518,6 @@ - # Flags NaCl (Clang 3.7) and Xcode 9.2 (Clang clang-900.0.39.2) do not - # recognize. - cflags += [ -- # An ABI compat warning we don't care about, https://crbug.com/1102157 -- # TODO(thakis): Push this to the (few) targets that need it, -- # instead of having a global flag. -- "-Wno-psabi", -- -- # Ignore warnings about MSVC optimization pragmas. - # TODO(thakis): Only for no_chromium_code? http://crbug.com/912662 - "-Wno-ignored-pragma-optimize", - -@@ -1538,25 +1532,12 @@ +--- build/config/compiler/BUILD.gn.orig 2020-11-17 13:39:13.000000000 -0500 ++++ build/config/compiler/BUILD.gn 2020-11-18 20:54:58.313154596 -0500 +@@ -1536,22 +1530,12 @@ # TODO(https://crbug.com/1028110): Evaluate and possible enable. "-Wno-deprecated-copy", - - # TODO(https://crbug.com/1050281): Clean up, enable. - "-Wno-non-c-typedef-for-linkage", -- -- # TODO(https://crbug.com/1114873): Clean up, enable. -- "-Wno-string-concatenation", ] cflags_c += [ diff --git a/srcpkgs/chromium/patches/upstream-check-for-enable-accelerated-video-decode-on-Linux.patch b/srcpkgs/chromium/patches/upstream-check-for-enable-accelerated-video-decode-on-Linux.patch deleted file mode 100644 index e7d05e84b04..00000000000 --- a/srcpkgs/chromium/patches/upstream-check-for-enable-accelerated-video-decode-on-Linux.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 54deb9811ca9bd2327def5c05ba6987b8c7a0897 Mon Sep 17 00:00:00 2001 -From: Evangelos Foutras -Date: Tue, 29 Sep 2020 01:02:22 +0000 -Subject: [PATCH] Check for enable-accelerated-video-decode on Linux - -Video decoding was being accelerated on Linux even though the newly -added "enable-accelerated-video-decode" flag was not specified. The -chrome://gpu page was misleadingly showing this feature as disabled: - - > Video Decode: Software only. Hardware acceleration disabled - -This change adds a check for --enable-accelerated-video-decode when -considering if video decoding should be activated. (Only on Linux.) - -Extra context: https://crbug.com/1097029#c18 (and also comment 20). - -Bug: 1066176, 1097029 -Change-Id: I534115f5f6ceed0ee3511fcf5c2d0f1dd04b9b7e -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2431434 -Reviewed-by: John Abd-El-Malek -Reviewed-by: Dale Curtis -Commit-Queue: Ted Meyer -Cr-Commit-Position: refs/heads/master@{#811480} ---- - content/renderer/render_thread_impl.cc | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc -index f13c94ddab7..0352f127171 100644 ---- content/renderer/render_thread_impl.cc -+++ content/renderer/render_thread_impl.cc -@@ -1121,7 +1121,11 @@ media::GpuVideoAcceleratorFactories* RenderThreadImpl::GetGpuFactories() { - kGpuStreamPriorityMedia); - - const bool enable_video_accelerator = -+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) -+ cmd_line->HasSwitch(switches::kEnableAcceleratedVideoDecode) && -+#else - !cmd_line->HasSwitch(switches::kDisableAcceleratedVideoDecode) && -+#endif // defined(OS_LINUX) && !defined(OS_CHROMEOS) - (gpu_channel_host->gpu_feature_info() - .status_values[gpu::GPU_FEATURE_TYPE_ACCELERATED_VIDEO_DECODE] == - gpu::kGpuFeatureStatusEnabled); diff --git a/srcpkgs/chromium/patches/upstream-fix-invalid-end-iterator-usage-in-CookieMonster.patch b/srcpkgs/chromium/patches/upstream-fix-invalid-end-iterator-usage-in-CookieMonster.patch deleted file mode 100644 index 7494dc9b7c3..00000000000 --- a/srcpkgs/chromium/patches/upstream-fix-invalid-end-iterator-usage-in-CookieMonster.patch +++ /dev/null @@ -1,78 +0,0 @@ -From 53478caee862624fc6d73516f8d64253854b146f Mon Sep 17 00:00:00 2001 -From: Piotr Tworek -Date: Mon, 31 Aug 2020 21:03:58 +0000 -Subject: [PATCH] Fix invalid "end" iterator usage in CookieMonster. - -Commit 229623d76e8baf714c8569c9f4efc5de266cef8b has introduced the following -code in cookie_monster.cc. - -// If this is the first cookie in |cookies_| with this key, increment the -// |num_keys_| counter. -bool different_prev = - inserted == cookies_.begin() || std::prev(inserted)->first != key; -bool different_next = - inserted == cookies_.end() || std::next(inserted)->first != key; -if (different_prev && different_next) - ++num_keys_; - -The "inserted" iterator is something that has been returned from -std::multimap::insert. At first glance it looks reasonable. The code -tries to determine if there are already similar elements with the same -key in the map. Unfortunately the expression calculating the value of -different_next can potentially use the end iterator to the map. The -"inserted == cookies_.end()" part of the expression will always evaluate -to false since the newly inserted element has to be in the map and -cookies_.end() points to the first element outside the map. If the -inserted happens to be the last element in the map the second part of -the expression will grab the end iterator by calling std::next(inserted) -and then will try to use it leading to invalid memory access. - -Given the fact that cookies_ is a std::multimap we should not even need -to calculate the value of different_next. It should always be true. - - "If the container has elements with equivalent key, inserts at the - upper bound of that range.(since C++11)" - -See: https://en.cppreference.com/w/cpp/container/multimap/insert - -Bug: 1120240 -Change-Id: I8928c294ac4daf72349a2331b31b017c1d015da0 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2368872 -Reviewed-by: Maksim Orlovich -Commit-Queue: Piotr Tworek -Cr-Commit-Position: refs/heads/master@{#803260} ---- - net/cookies/cookie_monster.cc | 13 +++++++++---- - 1 file changed, 9 insertions(+), 4 deletions(-) - -diff --git a/net/cookies/cookie_monster.cc b/net/cookies/cookie_monster.cc -index 265deed0e52..140b61a81dc 100644 ---- net/cookies/cookie_monster.cc -+++ net/cookies/cookie_monster.cc -@@ -1151,9 +1151,14 @@ CookieMonster::CookieMap::iterator CookieMonster::InternalInsertCookie( - // |num_keys_| counter. - bool different_prev = - inserted == cookies_.begin() || std::prev(inserted)->first != key; -- bool different_next = -- inserted == cookies_.end() || std::next(inserted)->first != key; -- if (different_prev && different_next) -+ // According to std::multiqueue documentation: -+ // "If the container has elements with equivalent key, inserts at the upper -+ // bound of that range. (since C++11)" -+ // This means that "inserted" iterator either points to the last element in -+ // the map, or the element succeeding it has to have different key. -+ DCHECK(std::next(inserted) == cookies_.end() || -+ std::next(inserted)->first != key); -+ if (different_prev) - ++num_keys_; - - return inserted; -@@ -1381,7 +1386,7 @@ void CookieMonster::InternalDeleteCookie(CookieMap::iterator it, - bool different_prev = - it == cookies_.begin() || std::prev(it)->first != it->first; - bool different_next = -- it == cookies_.end() || std::next(it)->first != it->first; -+ std::next(it) == cookies_.end() || std::next(it)->first != it->first; - if (different_prev && different_next) - --num_keys_; - diff --git a/srcpkgs/chromium/patches/upstream-only-fall-back-to-the-i965-driver-if-we-re-on-iHD.patch b/srcpkgs/chromium/patches/upstream-only-fall-back-to-the-i965-driver-if-we-re-on-iHD.patch deleted file mode 100644 index 5c517e4a8eb..00000000000 --- a/srcpkgs/chromium/patches/upstream-only-fall-back-to-the-i965-driver-if-we-re-on-iHD.patch +++ /dev/null @@ -1,139 +0,0 @@ -From fbd756ab55f9351165f923b0411c31dd71319c78 Mon Sep 17 00:00:00 2001 -From: Ted Meyer -Date: Wed, 16 Sep 2020 17:42:03 +0000 -Subject: [PATCH] Only fall back to the i965 driver if we're on iHD - -I got my hands on an old AMD laptop, and the gallium driver worked very -well and was saving power even at 720p, so there's no reason to block -that for now. - -Bug: 1116703 -Change-Id: Ib15bc2b93f33e99adad7569dd825e167b503a0ea -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2409967 -Commit-Queue: Ted Meyer -Reviewed-by: Andres Calderon Jaramillo -Cr-Commit-Position: refs/heads/master@{#807550} ---- - media/gpu/vaapi/vaapi_wrapper.cc | 73 ++++++++++++++++++++------------ - 1 file changed, 47 insertions(+), 26 deletions(-) - -diff --git a/media/gpu/vaapi/vaapi_wrapper.cc b/media/gpu/vaapi/vaapi_wrapper.cc -index 2ad0b997e56..e30d1dfb73b 100644 ---- media/gpu/vaapi/vaapi_wrapper.cc -+++ media/gpu/vaapi/vaapi_wrapper.cc -@@ -409,6 +409,8 @@ class VADisplayState { - - // Implementation of Initialize() called only once. - bool InitializeOnce() EXCLUSIVE_LOCKS_REQUIRED(va_lock_); -+ bool InitializeVaDisplay_Locked() EXCLUSIVE_LOCKS_REQUIRED(va_lock_); -+ bool InitializeVaDriver_Locked() EXCLUSIVE_LOCKS_REQUIRED(va_lock_); - - int refcount_ GUARDED_BY(va_lock_); - -@@ -472,11 +474,7 @@ bool VADisplayState::Initialize() { - return success; - } - --bool VADisplayState::InitializeOnce() { -- static_assert( -- VA_MAJOR_VERSION >= 2 || (VA_MAJOR_VERSION == 1 && VA_MINOR_VERSION >= 1), -- "Requires VA-API >= 1.1.0"); -- -+bool VADisplayState::InitializeVaDisplay_Locked() { - switch (gl::GetGLImplementation()) { - case gl::kGLImplementationEGLGLES2: - va_display_ = vaGetDisplayDRM(drm_fd_.get()); -@@ -519,25 +517,10 @@ bool VADisplayState::InitializeOnce() { - return false; - } - -- // Set VA logging level and driver name, unless already set. -- constexpr char libva_log_level_env[] = "LIBVA_MESSAGING_LEVEL"; -- std::unique_ptr env(base::Environment::Create()); -- if (!env->HasVar(libva_log_level_env)) -- env->SetVar(libva_log_level_env, "1"); -- --#if defined(USE_X11) -- if (gl::GetGLImplementation() == gl::kGLImplementationEGLANGLE) { -- DCHECK(!features::IsUsingOzonePlatform()); -- constexpr char libva_driver_impl_env[] = "LIBVA_DRIVER_NAME"; -- // TODO(crbug/1116703) The libva intel-media driver has a known segfault in -- // vaPutSurface, so until this is fixed, fall back to the i965 driver. There -- // is discussion of the issue here: -- // https://github.com/intel/media-driver/issues/818 -- if (!env->HasVar(libva_driver_impl_env)) -- env->SetVar(libva_driver_impl_env, "i965"); -- } --#endif // USE_X11 -+ return true; -+} - -+bool VADisplayState::InitializeVaDriver_Locked() { - // The VAAPI version. - int major_version, minor_version; - VAStatus va_res = vaInitialize(va_display_, &major_version, &minor_version); -@@ -545,9 +528,6 @@ bool VADisplayState::InitializeOnce() { - LOG(ERROR) << "vaInitialize failed: " << vaErrorStr(va_res); - return false; - } -- -- va_initialized_ = true; -- - const std::string va_vendor_string = vaQueryVendorString(va_display_); - DLOG_IF(WARNING, va_vendor_string.empty()) - << "Vendor string empty or error reading."; -@@ -555,6 +535,8 @@ bool VADisplayState::InitializeOnce() { - << va_vendor_string; - implementation_type_ = VendorStringToImplementationType(va_vendor_string); - -+ va_initialized_ = true; -+ - // The VAAPI version is determined from what is loaded on the system by - // calling vaInitialize(). Since the libva is now ABI-compatible, relax the - // version check which helps in upgrading the libva, without breaking any -@@ -571,6 +553,45 @@ bool VADisplayState::InitializeOnce() { - return true; - } - -+bool VADisplayState::InitializeOnce() { -+ static_assert( -+ VA_MAJOR_VERSION >= 2 || (VA_MAJOR_VERSION == 1 && VA_MINOR_VERSION >= 1), -+ "Requires VA-API >= 1.1.0"); -+ -+ // Set VA logging level, unless already set. -+ constexpr char libva_log_level_env[] = "LIBVA_MESSAGING_LEVEL"; -+ std::unique_ptr env(base::Environment::Create()); -+ if (!env->HasVar(libva_log_level_env)) -+ env->SetVar(libva_log_level_env, "1"); -+ -+ if (!InitializeVaDisplay_Locked() || !InitializeVaDriver_Locked()) -+ return false; -+ -+#if defined(USE_X11) -+ if (gl::GetGLImplementation() == gl::kGLImplementationEGLANGLE && -+ implementation_type_ == VAImplementation::kIntelIHD) { -+ DCHECK(!features::IsUsingOzonePlatform()); -+ constexpr char libva_driver_impl_env[] = "LIBVA_DRIVER_NAME"; -+ // TODO(crbug/1116703) The libva intel-media driver has a known segfault in -+ // vaPutSurface, so until this is fixed, fall back to the i965 driver. There -+ // is discussion of the issue here: -+ // https://github.com/intel/media-driver/issues/818 -+ if (!env->HasVar(libva_driver_impl_env)) -+ env->SetVar(libva_driver_impl_env, "i965"); -+ -+ // Re-initialize with the new driver. -+ va_display_ = nullptr; -+ va_initialized_ = false; -+ implementation_type_ = VAImplementation::kInvalid; -+ -+ if (!InitializeVaDisplay_Locked() || !InitializeVaDriver_Locked()) -+ return false; -+ } -+#endif // USE_X11 -+ -+ return true; -+} -+ - VAStatus VADisplayState::Deinitialize() { - base::AutoLock auto_lock(va_lock_); - VAStatus va_res = VA_STATUS_SUCCESS; diff --git a/srcpkgs/chromium/patches/upstream-remove-dead-reloc-in-nonalloc-LD-flags.patch b/srcpkgs/chromium/patches/upstream-remove-dead-reloc-in-nonalloc-LD-flags.patch deleted file mode 100644 index 4ad4f6e23bb..00000000000 --- a/srcpkgs/chromium/patches/upstream-remove-dead-reloc-in-nonalloc-LD-flags.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 74b0cb5b86f7d7f8f7c1172d85b09096bef147b7 Mon Sep 17 00:00:00 2001 -From: Daniel Nicoara -Date: Thu, 24 Sep 2020 02:34:24 +0000 -Subject: [PATCH] Remove dead-reloc-in-nonalloc LD flags - -Breakpad change landed. Revert workaround. - -Bug: 1105559 -Test: components/crash/content/tools/generate_breakpad_symbols.py --build-dir=out/andrd --binary=out/andrd/lib.unstripped/libcontent_shell_content_view.so --symbols-dir=/tmp/foo --platform=android -Change-Id: I519534002898a97b15a57b9b87ac78ef3f216dee -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2427349 -Commit-Queue: Nico Weber -Reviewed-by: Nico Weber -Cr-Commit-Position: refs/heads/master@{#810066} ---- - build/config/compiler/BUILD.gn | 8 -------- - 1 file changed, 8 deletions(-) - -diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn -index aa9eca20bd2..42839cfba3f 100644 ---- build/config/compiler/BUILD.gn -+++ build/config/compiler/BUILD.gn -@@ -396,14 +396,6 @@ config("compiler") { - "-Wl,--as-needed", - ] - } -- if (use_lld && !is_chromeos_device) { -- # TODO(thakis): Fix dump_syms to not need this and then remove it, -- # https://crbug.com/1105559 -- ldflags += [ -- "-Wl,-z,dead-reloc-in-nonalloc=*=0", -- "-Wl,-z,dead-reloc-in-nonalloc=.debug_ranges=1", -- ] -- } - } - - # Linux-specific compiler flags setup. diff --git a/srcpkgs/chromium/patches/upstream-xproto-fix-underflow-in-Fp1616ToDouble.patch b/srcpkgs/chromium/patches/upstream-xproto-fix-underflow-in-Fp1616ToDouble.patch deleted file mode 100644 index 00300a4a919..00000000000 --- a/srcpkgs/chromium/patches/upstream-xproto-fix-underflow-in-Fp1616ToDouble.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 5ade494a9966c7a9675af86dc42aca62fb4d806d Mon Sep 17 00:00:00 2001 -From: Tom Anderson -Date: Wed, 21 Oct 2020 22:02:35 +0000 -Subject: [PATCH] [XProto] Fix underflow in Fp1616ToDouble - -x11::Input::Fp1616 should be treated as a signed integer, otherwise --1 will underflow to 65535. When dragging a scrollbar, this would -cause the scrollbar to snap to the bottom when the cursor is dragged -above the window's y=0 coordinate. Verified that the issue is fixed -after this CL. - -BUG=1139623,1136352 -R=sky - -Change-Id: Ie318006ceadde9b9ce3e267fb453ddeba0e81da0 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2485620 -Auto-Submit: Thomas Anderson -Commit-Queue: Scott Violet -Reviewed-by: Scott Violet -Cr-Commit-Position: refs/heads/master@{#819538} ---- - ui/events/x/events_x_utils.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/ui/events/x/events_x_utils.cc b/ui/events/x/events_x_utils.cc -index 3010db5f40c..856dfb221e7 100644 ---- ui/events/x/events_x_utils.cc -+++ ui/events/x/events_x_utils.cc -@@ -376,7 +376,7 @@ base::TimeTicks TimeTicksFromXEvent(const x11::Event& xev) { - - // This is ported from libxi's FP1616toDBL in XExtInt.c - double Fp1616ToDouble(x11::Input::Fp1616 x) { -- auto x32 = static_cast(x); -+ auto x32 = static_cast(x); - return x32 * 1.0 / (1 << 16); - } - diff --git a/srcpkgs/chromium/patches/xxx-ppc64le-libvpx.patch b/srcpkgs/chromium/patches/xxx-ppc64le-libvpx.patch index b6a43980c04..792befb3a39 100644 --- a/srcpkgs/chromium/patches/xxx-ppc64le-libvpx.patch +++ b/srcpkgs/chromium/patches/xxx-ppc64le-libvpx.patch @@ -26,15 +26,6 @@ index 7198e59..3300485 100644 } configs -= [ "//build/config/compiler:chromium_code" ] -@@ -401,6 +403,8 @@ static_library("libvp9rc") { - } else { - sources = libvpx_srcs_arm64 - } -+ } else if (current_cpu == "ppc64") { -+ sources = libvpx_srcs_ppc64 - } - sources += [ "//third_party/libvpx/source/libvpx/vp9/ratectrl_rtc.cc" ] - sources += [ "//third_party/libvpx/source/libvpx/vp9/ratectrl_rtc.h" ] diff --git third_party/libvpx/generate_gni.sh third_party/libvpx/generate_gni.sh index bcf84b0..8a3f4f1 100755 --- third_party/libvpx/generate_gni.sh diff --git a/srcpkgs/chromium/patches/xxx-ppc64le-support.patch b/srcpkgs/chromium/patches/xxx-ppc64le-support.patch index 1f5fca76ea3..b64640e0d1f 100644 --- a/srcpkgs/chromium/patches/xxx-ppc64le-support.patch +++ b/srcpkgs/chromium/patches/xxx-ppc64le-support.patch @@ -3248,9 +3248,9 @@ index 9fc5db28..5f69f8dc 100644 diff --git third_party/crashpad/crashpad/util/posix/signals_test.cc third_party/crashpad/crashpad/util/posix/signals_test.cc index 58bfa8f8..8fc37c46 100644 ---- third_party/crashpad/crashpad/util/posix/signals_test.cc -+++ third_party/crashpad/crashpad/util/posix/signals_test.cc -@@ -46,12 +46,12 @@ bool CanCauseSignal(int sig) { +--- third_party/crashpad/crashpad/util/posix/signals_test.cc.orig 2020-11-17 13:39:47.000000000 -0500 ++++ third_party/crashpad/crashpad/util/posix/signals_test.cc 2020-11-18 21:06:33.433408623 -0500 +@@ -46,9 +46,9 @@ return sig == SIGABRT || sig == SIGALRM || sig == SIGBUS || @@ -3261,12 +3261,8 @@ index 58bfa8f8..8fc37c46 100644 +#endif // !defined(ARCH_CPU_ARM64) && !defined(ARCH_CPU_PPC64) #if defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARMEL) sig == SIGILL || --#endif // defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARMEL -+#endif // defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARMEL) - sig == SIGPIPE || - sig == SIGSEGV || - #if defined(OS_MACOSX) -@@ -117,9 +117,11 @@ void CauseSignal(int sig) { + #endif // defined(ARCH_CPU_X86_FAMILY) || defined(ARCH_CPU_ARMEL) +@@ -117,9 +117,11 @@ break; } @@ -3279,7 +3275,7 @@ index 58bfa8f8..8fc37c46 100644 case SIGFPE: { // Optimization makes this tricky, so get zero from a system call likely // to succeed, and try to do something with the result. -@@ -137,7 +139,7 @@ void CauseSignal(int sig) { +@@ -137,7 +139,7 @@ fstat(quotient, &stat_buf); break; } @@ -3544,9 +3540,9 @@ index 122e26ad..ec21dcb5 100644 defined(__ARMEB__) || defined(__AARCH64EB__) diff --git third_party/webrtc/modules/desktop_capture/differ_block.cc third_party/webrtc/modules/desktop_capture/differ_block.cc index dd9ab457..c005d959 100644 ---- third_party/webrtc/modules/desktop_capture/differ_block.cc -+++ third_party/webrtc/modules/desktop_capture/differ_block.cc -@@ -30,11 +30,7 @@ bool VectorDifference(const uint8_t* image1, const uint8_t* image2) { +--- third_party/webrtc/modules/desktop_capture/differ_block.cc.orig 2020-11-17 13:42:02.000000000 -0500 ++++ third_party/webrtc/modules/desktop_capture/differ_block.cc 2020-11-18 21:11:03.039905360 -0500 +@@ -30,11 +30,7 @@ static bool (*diff_proc)(const uint8_t*, const uint8_t*) = nullptr; if (!diff_proc) { @@ -3556,10 +3552,10 @@ index dd9ab457..c005d959 100644 - diff_proc = &VectorDifference_C; -#else +#if defined(WEBRTC_ARCH_X86_FAMILY) - bool have_sse2 = WebRtc_GetCPUInfo(kSSE2) != 0; + bool have_sse2 = GetCPUInfo(kSSE2) != 0; // For x86 processors, check if SSE2 is supported. if (have_sse2 && kBlockSize == 32) { -@@ -44,6 +40,10 @@ bool VectorDifference(const uint8_t* image1, const uint8_t* image2) { +@@ -44,6 +40,10 @@ } else { diff_proc = &VectorDifference_C; } diff --git a/srcpkgs/chromium/template b/srcpkgs/chromium/template index e9db11e215c..b31a09ed1f6 100644 --- a/srcpkgs/chromium/template +++ b/srcpkgs/chromium/template @@ -1,7 +1,7 @@ # Template file for 'chromium' pkgname=chromium # See http://www.chromium.org/developers/calendar for the latest version -version=86.0.4240.193 +version=87.0.4280.66 revision=1 archs="i686* x86_64* aarch64* armv7l* ppc64le*" short_desc="Google's attempt at creating a safer, faster, and more stable browser" @@ -9,7 +9,7 @@ maintainer="Enno Boland " license="BSD-3-Clause" homepage="https://www.chromium.org/" distfiles="https://commondatastorage.googleapis.com/chromium-browser-official/${pkgname}-${version}.tar.xz" -checksum=203dd5097f5873cb4881e2e838034f0dac5ff13e7fafa286baf87937f8eca534 +checksum=29a8e4ea82edec2fdcf34ece68323bec7ab90f3d5669e6b77f58cff9c278f741 nocross=yes lib32disabled=yes From 726f960c02d7c7f50fd6985df881e1cac0947548 Mon Sep 17 00:00:00 2001 From: Peter Bui Date: Thu, 19 Nov 2020 12:51:05 -0500 Subject: [PATCH 2/2] chromium-widevine: update to 87.0.4280.66. --- srcpkgs/chromium-widevine/INSTALL | 2 +- srcpkgs/chromium-widevine/template | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/srcpkgs/chromium-widevine/INSTALL b/srcpkgs/chromium-widevine/INSTALL index aff7dc79c3c..a8de96756c4 100644 --- a/srcpkgs/chromium-widevine/INSTALL +++ b/srcpkgs/chromium-widevine/INSTALL @@ -1,6 +1,6 @@ # INSTALL -checksum=fc4a4717ddf9623eeb2ebd4cf0f3a845a20fab34bb2831af2a264507b6432ef4 +checksum=e7e4c6a2108140c572562867f522d0311a25ce03ea36c5452cb8431865871226 _baseUrl="https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable" _filename="google-chrome-stable_${VERSION%_*}-1_amd64.deb" DISTFILE="${_baseUrl}/${_filename}" diff --git a/srcpkgs/chromium-widevine/template b/srcpkgs/chromium-widevine/template index 03908e02ca5..66626f83af3 100644 --- a/srcpkgs/chromium-widevine/template +++ b/srcpkgs/chromium-widevine/template @@ -6,7 +6,7 @@ _chromeVersion="current" _channel="stable" pkgname=chromium-widevine -version=86.0.4240.193 +version=87.0.4280.66 revision=1 archs="x86_64" create_wrksrc=yes