Update to 0.39.1

This commit is contained in:
Richard Hughes 2014-12-19 09:05:58 +00:00
parent 73a2eab3a0
commit ca281b7c0c
4 changed files with 7 additions and 54 deletions

1
.gitignore vendored
View File

@ -6,3 +6,4 @@
/vte-0.38.1.tar.xz
/vte-0.38.2.tar.xz
/vte-0.39.0.tar.xz
/vte-0.39.1.tar.xz

View File

@ -1,48 +0,0 @@
From eaaffc7508765ceb54e648e6fd2f31bc9969846b Mon Sep 17 00:00:00 2001
From: Egmont Koblinger <egmont@gmail.com>
Date: Mon, 1 Dec 2014 13:30:52 +0100
Subject: [PATCH] widget: Do not leave behind a zombie child when closing a
terminal
https://bugzilla.gnome.org/show_bug.cgi?id=740929
---
src/vte.c | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
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);
--
2.1.0

View File

@ -1 +1 @@
4c84d19125b4c01ddb0397e30bbd91da vte-0.39.0.tar.xz
3069bd505313721726346ff4ef47f9f8 vte-0.39.1.tar.xz

View File

@ -1,8 +1,8 @@
%global apiver 2.91
Name: vte291
Version: 0.39.0
Release: 2%{?dist}
Version: 0.39.1
Release: 1%{?dist}
Summary: Terminal emulator library
License: LGPLv2+
@ -10,8 +10,6 @@ URL: http://www.gnome.org/
Source0: http://download.gnome.org/sources/vte/0.39/vte-%{version}.tar.xz
# https://bugzilla.gnome.org/show_bug.cgi?id=688456
Patch0: 0001-widget-Only-show-the-cursor-on-motion-if-moved.patch
# https://bugzilla.gnome.org/show_bug.cgi?id=740929
Patch1: 0001-widget-Do-not-leave-behind-a-zombie-child-when-closi.patch
BuildRequires: gettext
BuildRequires: gobject-introspection-devel
@ -53,7 +51,6 @@ emulator library.
%prep
%setup -q -n vte-%{version}
%patch0 -p1 -b .motion
%patch1 -p1 -b .zombie
%build
CFLAGS="%optflags -fPIE -DPIE" \
@ -99,6 +96,9 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
%{_sysconfdir}/profile.d/vte.sh
%changelog
* Fri Dec 19 2014 Richard Hughes <rhughes@redhat.com> - 0.39.1-1
- Update to 0.39.1
* Mon Dec 01 2014 Debarshi Ray <rishi@fedoraproject.org> - 0.39.0-2
- Backport upstream patch to fix zombie shells (GNOME #740929)