summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeorge Sherwood2008-11-14 10:37:58 -0600
committerArwed von Merkatz2008-11-19 19:06:50 +0100
commita27965c8012e2214db150c62970ff723e5428a9c (patch)
tree9fd974f3f0101f72db09e9cc7c83c818659be8a9
parent9d89e9628cd82a01fdfce16c48d9d199d98ef782 (diff)
thunar: Added patch from
http://bugzilla.xfce.org/show_bug.cgi?id=2983 for Bug 14884. (cherry picked from commit 155502e3d92a24b3c5309756657be8c053d7dc11)
-rw-r--r--xfce/thunar/HISTORY5
-rwxr-xr-xxfce/thunar/PRE_BUILD6
-rw-r--r--xfce/thunar/thunar-zombie.patch31
3 files changed, 41 insertions, 1 deletions
diff --git a/xfce/thunar/HISTORY b/xfce/thunar/HISTORY
index bcb9642d55..1dec369eb4 100644
--- a/xfce/thunar/HISTORY
+++ b/xfce/thunar/HISTORY
@@ -1,3 +1,8 @@
+2008-11-14 George Sherwood <gsherwood@sourcemage.org>
+ * PRE_BUILD: Added patch.
+ * thunar-zombie.patch: Added upstream patch. Bug #14884
+ See http://bugzilla.xfce.org/show_bug.cgi?id=2983
+
2008-10-28 Vlad Glagolev <stealth@sourcemage.org>
* DETAILS: updated spell to 0.9.3; quoting paths; fixed short desc
* PRE_BUILD: quoting paths; cleaned up
diff --git a/xfce/thunar/PRE_BUILD b/xfce/thunar/PRE_BUILD
index 8acb7d2c27..2cd1574a4a 100755
--- a/xfce/thunar/PRE_BUILD
+++ b/xfce/thunar/PRE_BUILD
@@ -8,4 +8,8 @@ sed -i "s:doc/Thunar:doc/$SPELL:g" \
for lang in C es eu fr ja pl ru zh_TW; do
sed -i "s:doc/Thunar:doc/$SPELL:g" \
docs/manual/$lang/{images/,}Makefile.{am,in}
-done
+done &&
+
+
+# See http://bugzilla.xfce.org/show_bug.cgi?id=2983
+patch -p0 < $SCRIPT_DIRECTORY/thunar-zombie.patch
diff --git a/xfce/thunar/thunar-zombie.patch b/xfce/thunar/thunar-zombie.patch
new file mode 100644
index 0000000000..4353c7490f
--- /dev/null
+++ b/xfce/thunar/thunar-zombie.patch
@@ -0,0 +1,31 @@
+Index: thunar-vfs/thunar-vfs-exec.c
+===================================================================
+--- thunar-vfs/thunar-vfs-exec.c (revision 26428)
++++ thunar-vfs/thunar-vfs-exec.c (working copy)
+@@ -324,8 +324,10 @@
+ if (startup_data->watch_id != 0)
+ g_source_remove (startup_data->watch_id);
+
+- /* close the PID */
+- g_spawn_close_pid (startup_data->pid);
++ /* make sure we don't leave zombies (see bug #2983 for details) */
++ g_child_watch_add_full (G_PRIORITY_LOW, startup_data->pid,
++ (GChildWatchFunc) g_spawn_close_pid,
++ NULL, NULL);
+
+ /* release the startup data */
+ _thunar_vfs_slice_free (TvsnStartupData, startup_data);
+@@ -513,7 +515,13 @@
+ startup_data->pid = pid;
+ }
+ }
++ else if (G_LIKELY (succeed))
++ {
++ /* make sure we don't leave zombies (see bug #2983 for details) */
++ g_child_watch_add_full (G_PRIORITY_LOW, pid, (GChildWatchFunc) g_spawn_close_pid, NULL, NULL);
+
++ }
++
+ /* release the sn display */
+ if (G_LIKELY (sn_display != NULL))
+ sn_display_unref (sn_display);