From: Luuk van Baal <luukvbaal@gmail.com>
Date: Sun, 19 Feb 2023 20:52:55 +0000 (+0100)
Subject: Preview-tui hide terminated/broken pipe messages
X-Git-Tag: v4.8~10^2
X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=675e50c9417fc960bd6230d2f0ecc276136a0b43;p=nnn.git

Preview-tui hide terminated/broken pipe messages

Fix #1583, close #1591
---

diff --git a/plugins/preview-tui b/plugins/preview-tui
index 6522c09c..1842e42c 100755
--- a/plugins/preview-tui
+++ b/plugins/preview-tui
@@ -146,10 +146,20 @@ for env in $ENVVARS; do
     esac
 done; unset IFS
 
+trap '' PIPE
 exists() { type "$1" >/dev/null 2>&1 ;}
 pkill() { command pkill "$@" >/dev/null 2>&1 ;}
-pidkill() { [ -f "$1" ] && kill "$(cat "$1" 2>/dev/null)" >/dev/null 2>&1 ;}
 prompt() { printf "%b" "$@"; cfg=$(stty -g); stty raw -echo; head -c 1; stty "$cfg" ;}
+pidkill() {
+	if [ -f "$1" ]; then
+		PID="$(cat "$1" 2>/dev/null)" || return 1
+		kill "$PID" >/dev/null 2>&1
+		RET=$?
+		wait "$PID" 2>/dev/null
+		return $RET
+	fi
+	return 1
+}
 
 start_preview() {
     case "$NNN_TERMINAL" in