Title: [229290] trunk/Tools
Revision
229290
Author
[email protected]
Date
2018-03-05 11:29:44 -0800 (Mon, 05 Mar 2018)

Log Message

[GTK][Wayland] The GTK Wayland bot exits early because of assertions related with libsecret since r221925
https://bugs.webkit.org/show_bug.cgi?id=183330

Reviewed by Michael Catanzaro.

Add libsecret to the JHBuild and build it only when the system version is
less than 0.18.6 (unreleased as of writing this) in order to cherry pick
a fix for a bug that causes crashes with layout tests.

* gtk/jhbuild.modules:
* gtk/patches/libsecret-secret-methods-Don-t-unref-NULL-when-search-fails.patch: Added.

Modified Paths

Added Paths

Diff

Modified: trunk/Tools/ChangeLog (229289 => 229290)


--- trunk/Tools/ChangeLog	2018-03-05 19:03:59 UTC (rev 229289)
+++ trunk/Tools/ChangeLog	2018-03-05 19:29:44 UTC (rev 229290)
@@ -1,3 +1,17 @@
+2018-03-05  Carlos Alberto Lopez Perez  <[email protected]>
+
+        [GTK][Wayland] The GTK Wayland bot exits early because of assertions related with libsecret since r221925
+        https://bugs.webkit.org/show_bug.cgi?id=183330
+
+        Reviewed by Michael Catanzaro.
+
+        Add libsecret to the JHBuild and build it only when the system version is
+        less than 0.18.6 (unreleased as of writing this) in order to cherry pick
+        a fix for a bug that causes crashes with layout tests.
+
+        * gtk/jhbuild.modules:
+        * gtk/patches/libsecret-secret-methods-Don-t-unref-NULL-when-search-fails.patch: Added.
+
 2018-03-05  Claudio Saavedra  <[email protected]>
 
         [GTK] Implement WTR's PlatformWebView::setWindowIsKey()

Modified: trunk/Tools/gtk/jhbuild.modules (229289 => 229290)


--- trunk/Tools/gtk/jhbuild.modules	2018-03-05 19:03:59 UTC (rev 229289)
+++ trunk/Tools/gtk/jhbuild.modules	2018-03-05 19:29:44 UTC (rev 229290)
@@ -28,6 +28,7 @@
       <dep package="pango"/>
       <dep package="llvm"/>
       <dep package="shared-mime-info"/>
+      <dep package="libsecret"/>
       <dep package="libgpg-error"/>
       <dep package="libgcrypt"/>
       <if condition-set="linux">
@@ -489,6 +490,23 @@
             hash="sha256:74da2798728e79c3aedfffa268d8fe811c3766ca3708309c0dc45502be137da1"/>
   </autotools>
 
+
+  <!-- libsecret is only built if the system version is less than 0.18.6 (unreleased
+       as of writing this) in order to cherry pick a fix for a bug that causes crashes
+       with layout tests. -->
+  <autotools id="libsecret" autogen-sh="configure">
+    <pkg-config>libsecret-1.pc</pkg-config>
+    <branch repo="ftp.gnome.org"
+            version="0.18.6"
+            module="/pub/GNOME/sources/libsecret/0.18/libsecret-0.18.5.tar.xz"
+            hash="sha256:9ce7bd8dd5831f2786c935d82638ac428fa085057cc6780aba0e39375887ccb3">
+    <patch file="libsecret-secret-methods-Don-t-unref-NULL-when-search-fails.patch" strip="1"/>
+    </branch>
+    <dependencies>
+      <dep package="glib"/>
+    </dependencies>
+  </autotools>
+
   <distutils id="meson" python3="1">
     <branch repo="github-tarball"
             version="0.42.0"

Added: trunk/Tools/gtk/patches/libsecret-secret-methods-Don-t-unref-NULL-when-search-fails.patch (0 => 229290)


--- trunk/Tools/gtk/patches/libsecret-secret-methods-Don-t-unref-NULL-when-search-fails.patch	                        (rev 0)
+++ trunk/Tools/gtk/patches/libsecret-secret-methods-Don-t-unref-NULL-when-search-fails.patch	2018-03-05 19:29:44 UTC (rev 229290)
@@ -0,0 +1,30 @@
+From f76e333d09bc43a30037490a63d16fb79ccb3149 Mon Sep 17 00:00:00 2001
+From: Michael Catanzaro <[email protected]>
+Date: Wed, 6 Sep 2017 20:46:14 -0500
+Subject: [PATCH] secret-methods: Don't unref NULL when search fails
+
+If the gnome-keyring D-Bus service is not responding, we wind up freeing
+the SearchClosure in an error path without ever creating a SecretService
+object. Guard against this.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=787391
+---
+ libsecret/secret-methods.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libsecret/secret-methods.c b/libsecret/secret-methods.c
+index 48eb716..c0cbc99 100644
+--- a/libsecret/secret-methods.c
++++ b/libsecret/secret-methods.c
+@@ -51,7 +51,7 @@ static void
+ search_closure_free (gpointer data)
+ {
+ 	SearchClosure *closure = data;
+-	g_object_unref (closure->service);
++	g_clear_object (&closure->service);
+ 	g_clear_object (&closure->cancellable);
+ 	g_hash_table_unref (closure->items);
+ 	g_variant_unref (closure->attributes);
+-- 
+2.11.0
+
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to