diff options
author | Felipe Contreras | 2020-12-06 19:42:14 -0600 |
---|---|---|
committer | Felipe Contreras | 2020-12-06 19:50:28 -0600 |
commit | 84ce92c955b2e4d55f966ab540c785c81d13e438 (patch) | |
tree | 6086d41ce22ba9dec514cfcffb5ec7dffbd8cf42 | |
parent | 4466f7230710b81bcb2b8e19a1adcae8f904745f (diff) | |
download | aur-84ce92c955b2e4d55f966ab540c785c81d13e438.tar.gz |
Add the patch that admins didn't want to address
Since Doug Newgard rejected it:
https://bugs.archlinux.org/task/68868
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
-rw-r--r-- | .SRCINFO | 2 | ||||
-rw-r--r-- | PKGBUILD | 7 | ||||
-rw-r--r-- | fix-exit-regression.patch | 46 |
3 files changed, 53 insertions, 2 deletions
@@ -21,7 +21,9 @@ pkgbase = vte3-nohang provides = libvte-2.91.so conflicts = vte3 source = git+https://gitlab.gnome.org/GNOME/vte.git#commit=62c4908953e3fea8e0771fa82212462157d46d4f + source = fix-exit-regression.patch sha256sums = SKIP + sha256sums = 582edbac0c92cb023a4c0a8f70cb74c85606c139ab8c8f83f6093a21e3033a5c pkgname = vte3-nohang @@ -10,8 +10,10 @@ license=(LGPL) depends=(gtk3 pcre2 gnutls fribidi systemd-libs) makedepends=(gobject-introspection vala git gtk-doc gperf meson) _commit=62c4908953e3fea8e0771fa82212462157d46d4f # tags/0.62.1^0 -source=("git+https://gitlab.gnome.org/GNOME/vte.git#commit=$_commit") -sha256sums=('SKIP') +source=("git+https://gitlab.gnome.org/GNOME/vte.git#commit=$_commit" + fix-exit-regression.patch) +sha256sums=('SKIP' + '582edbac0c92cb023a4c0a8f70cb74c85606c139ab8c8f83f6093a21e3033a5c') depends+=(vte-common) provides=("vte3=$pkgver" libvte-2.91.so) @@ -23,6 +25,7 @@ pkgver() { prepare() { cd vte + patch -p1 -i "$srcdir/fix-exit-regression.patch" } build() { diff --git a/fix-exit-regression.patch b/fix-exit-regression.patch new file mode 100644 index 000000000000..eeaf3afba227 --- /dev/null +++ b/fix-exit-regression.patch @@ -0,0 +1,46 @@ +From 21514e6d4f38cdf4d5ce9186c2dcc8e6bb63ce15 Mon Sep 17 00:00:00 2001 +From: Felipe Contreras <felipe.contreras@gmail.com> +Date: Sun, 6 Dec 2020 04:01:03 -0600 +Subject: [PATCH] Fix exit regression + +Any time you start a job in the background vte gets confused and waits +several seconds for nothing to happen before exiting. + +This regression was thanks to commit 7888602c +(lib: Rework child exit and EOF handling, 2019-11-17). + +It can be triggered by simply doing: + + sleep infinity & + exit + +The maintainers of vte clearly have no intention fixing the issue that +was reported more than one year ago. + + https://gitlab.gnome.org/GNOME/vte/-/issues/204 + +With this patch we can return to the behavior of 0.59, where the +terminal exits immediately. + +Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> +--- + src/vte.cc | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/src/vte.cc b/src/vte.cc +index 2614e5b4..ea80d1ee 100644 +--- a/src/vte.cc ++++ b/src/vte.cc +@@ -3130,6 +3130,9 @@ Terminal::child_watch_done(pid_t pid, + + m_pty_pid = -1; + ++ if (pty()) ++ unset_pty(); ++ + /* If we still have a PTY, or data to process, defer emitting the signals + * until we have EOF on the PTY, so that we can process all pending data. + */ +-- +2.29.2 + |