commit:     807cb87fc6bf6a6d76ad504a412306dc8b97a60e
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Mon Apr  3 17:32:12 2023 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Mon Apr  3 17:32:40 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=807cb87f

www-client/chromium: restore InkDropHost-crash patch

Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 ...10.ebuild => chromium-111.0.5563.110-r1.ebuild} |  1 +
 .../files/chromium-111-InkDropHost-crash.patch     | 25 ++++++++++++++++++++++
 2 files changed, 26 insertions(+)

diff --git a/www-client/chromium/chromium-111.0.5563.110.ebuild 
b/www-client/chromium/chromium-111.0.5563.110-r1.ebuild
similarity index 99%
rename from www-client/chromium/chromium-111.0.5563.110.ebuild
rename to www-client/chromium/chromium-111.0.5563.110-r1.ebuild
index d41b4c6b4d15..d83cbb6b2169 100644
--- a/www-client/chromium/chromium-111.0.5563.110.ebuild
+++ b/www-client/chromium/chromium-111.0.5563.110-r1.ebuild
@@ -342,6 +342,7 @@ src_prepare() {
                "${FILESDIR}/chromium-109-system-zlib.patch"
                "${FILESDIR}/chromium-109-system-openh264.patch"
                "${FILESDIR}/chromium-111-ozone-platform.patch"
+               "${FILESDIR}/chromium-111-InkDropHost-crash.patch"
                
"${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
                "${FILESDIR}/chromium-cross-compile.patch"
        )

diff --git a/www-client/chromium/files/chromium-111-InkDropHost-crash.patch 
b/www-client/chromium/files/chromium-111-InkDropHost-crash.patch
new file mode 100644
index 000000000000..21dd8e41b8c8
--- /dev/null
+++ b/www-client/chromium/files/chromium-111-InkDropHost-crash.patch
@@ -0,0 +1,25 @@
+https://chromium-review.googlesource.com/c/chromium/src/+/2959890
+
+--- a/ui/views/animation/ink_drop_host.h
++++ b/ui/views/animation/ink_drop_host.h
+@@ -238,6 +238,11 @@ class VIEWS_EXPORT InkDropHost {
+   // Used to observe View and inform the InkDrop of host-transform changes.
+   ViewLayerTransformObserver host_view_transform_observer_;
+ 
++  // Declared before |ink_drop_|, because InkDropImpl may call
++  // RemoveInkDropLayer on partly destructed InkDropHost. In
++  // that case |ink_drop_mask_| must be still valid.
++  std::unique_ptr<views::InkDropMask> ink_drop_mask_;
++
+   // Should not be accessed directly. Use GetInkDrop() instead.
+   std::unique_ptr<InkDrop> ink_drop_;
+ 
+@@ -261,8 +266,6 @@ class VIEWS_EXPORT InkDropHost {
+   int ink_drop_small_corner_radius_ = 2;
+   int ink_drop_large_corner_radius_ = 4;
+ 
+-  std::unique_ptr<views::InkDropMask> ink_drop_mask_;
+-
+   base::RepeatingCallback<std::unique_ptr<InkDrop>()> 
create_ink_drop_callback_;
+   base::RepeatingCallback<std::unique_ptr<InkDropRipple>()>
+       create_ink_drop_ripple_callback_;

Reply via email to