[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#772156: marked as done (unblock: vte2.91/0.38.1-2)



Your message dated Sun, 7 Dec 2014 22:41:00 +0100
with message-id <20141207214100.GC28749@ugent.be>
and subject line Re: Bug#772156: unblock: vte2.91/0.38.1-2
has caused the Debian Bug report #772156,
regarding unblock: vte2.91/0.38.1-2
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
772156: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772156
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

Hi,

please unblock vte2.91 for a few selected bugfixes.

vte2.91 (0.38.1-2) unstable; urgency=medium

  * Bug fixes from upstream git:
    + 10_check_cursor_display.patch: check the cursor’s display before 
      using it.
    + 11_cjk_ambiguous_width.patch: copy-paste bug in properties.
    + 12_zombies.patch, 13_zombies.patch: don’t leave zombie processes 
      around. Closes: #770596.

Attaching the individual patches.

unblock vte2.91/0.38.1-2

Thanks,
-- 
 .''`.        Josselin Mouette
: :' :
`. `'
  `-
>From 5cff499de0122b44d60c189ec138b2853af10a6c Mon Sep 17 00:00:00 2001
From: Christian Persch <chpe@gnome.org>
Date: Mon, 3 Nov 2014 18:38:30 +0100
Subject: widget: Check cursor's display before using it

(cherry picked from commit 19963440f9da89e2a3035c8a7488a92a244f22e3)

diff --git a/src/vte.c b/src/vte.c
index 9374fe6..28b7be9 100644
--- a/src/vte.c
+++ b/src/vte.c
@@ -1147,7 +1147,8 @@ vte_terminal_set_cursor_from_regex_match(VteTerminal *terminal, struct vte_match
 
         switch (regex->cursor_mode) {
                 case VTE_REGEX_CURSOR_GDKCURSOR:
-                        if (regex->cursor.cursor != NULL) {
+                        if (regex->cursor.cursor != NULL &&
+                            gdk_cursor_get_display(regex->cursor.cursor) == gtk_widget_get_display(&terminal->widget)) {
                                 cursor = g_object_ref(regex->cursor.cursor);
                         }
                         break;
-- 
cgit v0.10.1

>From 102468e58fe48512ef100e439577d08c2ba4fb7f Mon Sep 17 00:00:00 2001
From: Egmont Koblinger <egmont@gmail.com>
Date: Sat, 22 Nov 2014 13:33:33 +0100
Subject: widget: Fix installing the CJK ambiguous width property

(cherry picked from commit 447266e2925527f898d3e9d048db7cecd2397cb7)

diff --git a/src/vte.c b/src/vte.c
index 28b7be9..c6172fc 100644
--- a/src/vte.c
+++ b/src/vte.c
@@ -11286,7 +11286,7 @@ vte_terminal_class_init(VteTerminalClass *klass)
          */
         g_object_class_install_property
                 (gobject_class,
-                 PROP_CURSOR_BLINK_MODE,
+                 PROP_CJK_AMBIGUOUS_WIDTH,
                  g_param_spec_int ("cjk-ambiguous-width", NULL, NULL,
                                    1, 2, VTE_ISO2022_DEFAULT_UTF8_AMBIGUOUS_WIDTH,
                                     G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS | G_PARAM_EXPLICIT_NOTIFY));
-- 
cgit v0.10.1

>From d9d83d455a5b67fcce030c56fbd8de921dc3fa6d Mon Sep 17 00:00:00 2001
From: Egmont Koblinger <egmont@gmail.com>
Date: Mon, 1 Dec 2014 13:30:52 +0100
Subject: widget: Do not leave behind a zombie child when closing a terminal

https://bugzilla.gnome.org/show_bug.cgi?id=740929
(cherry picked from commit 31b150146189b49fadd126edc1c373ada234c865)

diff --git a/src/vte.c b/src/vte.c
index c6172fc..e5149c9 100644
--- a/src/vte.c
+++ b/src/vte.c
@@ -3210,6 +3210,12 @@ vte_terminal_child_watch_cb(GPid pid,
                             int status,
                             VteTerminal *terminal)
 {
+	if (terminal == NULL) {
+		/* The child outlived VteTerminal. Do nothing, we're happy that Glib
+		 * read its exit data and hence it's no longer there as zombie. */
+		return;
+	}
+
 	if (pid == terminal->pvt->pty_pid) {
                 GObject *object = G_OBJECT(terminal);
 
@@ -8416,11 +8422,15 @@ vte_terminal_finalize(GObject *object)
 		terminal->pvt->outgoing_conv = VTE_INVALID_CONV;
 	}
 
-	/* Stop listening for child-exited signals. */
+	/* Start listening for child-exited signals and ignore them, so that no zombie child is left behind. */
         if (terminal->pvt->child_watch_source != 0) {
                 g_source_remove (terminal->pvt->child_watch_source);
                 terminal->pvt->child_watch_source = 0;
         }
+        g_child_watch_add_full(G_PRIORITY_HIGH,
+                               terminal->pvt->pty_pid,
+                               (GChildWatchFunc)vte_terminal_child_watch_cb,
+                               NULL, NULL);
 
 	/* Stop processing input. */
 	vte_terminal_stop_processing (terminal);
-- 
cgit v0.10.1

>From b033047970a7bb7e9e17c6e38ce5107daf704a7a Mon Sep 17 00:00:00 2001
From: Debarshi Ray <debarshir@gnome.org>
Date: Thu, 4 Dec 2014 16:46:00 +0100
Subject: widget: Reap only when a child is present

https://bugzilla.gnome.org/show_bug.cgi?id=740929
(cherry picked from commit 5f19e0b08cb06c76d989592e1a859ac3a23b8b4b)

diff --git a/src/vte.c b/src/vte.c
index e5149c9..5919416 100644
--- a/src/vte.c
+++ b/src/vte.c
@@ -8426,11 +8426,11 @@ vte_terminal_finalize(GObject *object)
         if (terminal->pvt->child_watch_source != 0) {
                 g_source_remove (terminal->pvt->child_watch_source);
                 terminal->pvt->child_watch_source = 0;
+                g_child_watch_add_full(G_PRIORITY_HIGH,
+                                       terminal->pvt->pty_pid,
+                                       (GChildWatchFunc)vte_terminal_child_watch_cb,
+                                       NULL, NULL);
         }
-        g_child_watch_add_full(G_PRIORITY_HIGH,
-                               terminal->pvt->pty_pid,
-                               (GChildWatchFunc)vte_terminal_child_watch_cb,
-                               NULL, NULL);
 
 	/* Stop processing input. */
 	vte_terminal_stop_processing (terminal);
-- 
cgit v0.10.1


--- End Message ---
--- Begin Message ---
Hi,

On Sun, Dec 07, 2014 at 10:36:55PM +0100, Cyril Brulebois wrote:
> > Looks okay to me, but needs a d-i ack for the udeb.
> 
> No objections, with the same comment/rationale (about (not) having
> runtime tested it) as for other packages over the past few days.

Added unblock-udeb.

Cheers,

Ivo

--- End Message ---

Reply to: