[arch-commits] Commit in chromium/trunk (2 files)

Evangelos Foutras foutrelis at archlinux.org
Thu Mar 4 02:17:57 UTC 2021


    Date: Thursday, March 4, 2021 @ 02:17:56
  Author: foutrelis
Revision: 409133

upgpkg: chromium 89.0.4389.72-2: fix SIGTRAP on tab/window move

Added:
  chromium/trunk/don-t-crash-on-reentrant-RunMoveLoop-call.patch
Modified:
  chromium/trunk/PKGBUILD

-------------------------------------------------+
 PKGBUILD                                        |    5 ++-
 don-t-crash-on-reentrant-RunMoveLoop-call.patch |   33 ++++++++++++++++++++++
 2 files changed, 37 insertions(+), 1 deletion(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2021-03-03 22:51:03 UTC (rev 409132)
+++ PKGBUILD	2021-03-04 02:17:56 UTC (rev 409133)
@@ -5,7 +5,7 @@
 
 pkgname=chromium
 pkgver=89.0.4389.72
-pkgrel=1
+pkgrel=2
 _launcher_ver=7
 _gcc_patchset=6
 pkgdesc="A web browser built for speed, simplicity, and security"
@@ -25,6 +25,7 @@
         https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver/chromium-launcher-$_launcher_ver.tar.gz
         https://github.com/stha09/chromium-patches/releases/download/chromium-${pkgver%%.*}-patchset-$_gcc_patchset/chromium-${pkgver%%.*}-patchset-$_gcc_patchset.tar.xz
         add-dependency-on-opus-in-webcodecs.patch
+        don-t-crash-on-reentrant-RunMoveLoop-call.patch
         add-ctime-for-std-time.patch
         chromium-glibc-2.33.patch
         use-oauth2-client-switches-as-default.patch)
@@ -32,6 +33,7 @@
             '86859c11cfc8ba106a3826479c0bc759324a62150b271dd35d1a0f96e890f52f'
             '359d2847e775d8cf6f4e0b12c94c8f2718f0fd562427859c596ce1c3711dbd8e'
             'b86b11de8db438c47f0a84c7956740f648d21035f4ee46bfbd50c3348d369121'
+            '615f5fefc94da605957edb34b6c000f32953fb5ff6ffb321f062dab8e0fef9d3'
             '102e0c976c0d7fd1fbe2f2978ec621499a97b62457b3fde4daf84f026d1a53a7'
             '2fccecdcd4509d4c36af873988ca9dbcba7fdb95122894a9fdf502c33a1d7a4b'
             'e393174d7695d0bafed69e868c5fbfecf07aa6969f3b64596d0bae8b067e1711')
@@ -93,6 +95,7 @@
 
   # Upstream fixes
   patch -Np1 -i ../add-dependency-on-opus-in-webcodecs.patch
+  patch -Np1 -i ../don-t-crash-on-reentrant-RunMoveLoop-call.patch
   patch -Np1 -i ../add-ctime-for-std-time.patch
 
   # Fixes for building with libstdc++ instead of libc++

Added: don-t-crash-on-reentrant-RunMoveLoop-call.patch
===================================================================
--- don-t-crash-on-reentrant-RunMoveLoop-call.patch	                        (rev 0)
+++ don-t-crash-on-reentrant-RunMoveLoop-call.patch	2021-03-04 02:17:56 UTC (rev 409133)
@@ -0,0 +1,33 @@
+From 4b05247f43d592ce748933963df923d9a40705f8 Mon Sep 17 00:00:00 2001
+From: Sigurdur Asgeirsson <siggi at chromium.org>
+Date: Mon, 8 Feb 2021 18:36:10 +0000
+Subject: [PATCH] Don't crash on reentrant RunMoveLoop call.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Bug: 1173484
+Change-Id: Ia75b200d2826586080c26089751bef1d12c8fbce
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2680089
+Reviewed-by: Scott Violet <sky at chromium.org>
+Commit-Queue: Sigurður Ásgeirsson <siggi at chromium.org>
+Cr-Commit-Position: refs/heads/master@{#851799}
+---
+ chrome/browser/ui/views/tabs/tab_drag_controller.cc | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/chrome/browser/ui/views/tabs/tab_drag_controller.cc b/chrome/browser/ui/views/tabs/tab_drag_controller.cc
+index 16c3c1e9df8c2..d2ccc2b965237 100644
+--- a/chrome/browser/ui/views/tabs/tab_drag_controller.cc
++++ b/chrome/browser/ui/views/tabs/tab_drag_controller.cc
+@@ -1397,6 +1397,10 @@ void TabDragController::RunMoveLoop(const gfx::Vector2d& drag_offset) {
+ 
+   move_loop_widget_ = GetAttachedBrowserWidget();
+   DCHECK(move_loop_widget_);
++
++  // RunMoveLoop can be called reentrantly from within another RunMoveLoop,
++  // in which case the observation is already established.
++  widget_observation_.Reset();
+   widget_observation_.Observe(move_loop_widget_);
+   current_state_ = DragState::kDraggingWindow;
+   base::WeakPtr<TabDragController> ref(weak_factory_.GetWeakPtr());



More information about the arch-commits mailing list