From 206d6ac638d248f29bba8ec505c5dea3c0fefc70 Mon Sep 17 00:00:00 2001 From: romkatv Date: Fri, 8 Mar 2019 03:04:49 +0100 Subject: [PATCH] work around bugs in zplug. it hangs on startup if you start a subshell in the background --- gitstatus/gitstatus.plugin.zsh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gitstatus/gitstatus.plugin.zsh b/gitstatus/gitstatus.plugin.zsh index faf41651..652b25c0 100644 --- a/gitstatus/gitstatus.plugin.zsh +++ b/gitstatus/gitstatus.plugin.zsh @@ -215,12 +215,12 @@ function gitstatus_start() { log=$(mktemp "${TMPDIR:-/tmp}"/gitstatus.$$.log.XXXXXXXXXX) - ( - nice -n -20 $daemon --dirty-max-index-size=$max_dirty --parent-pid=$$ \ - <&$req_fd >&$resp_fd 2>$log || true - echo -nE $'bye\x1f0\x1e' >&$resp_fd || true - rm -f $req_fifo $resp_fifo - ) &! + # We use `zsh -c` instead of plain {} or () to work around bugs in zplug. It hangs on startup. + zsh -c " + ${(q)daemon}2 --dirty-max-index-size=${(q)max_dirty} --parent-pid=$$ + echo -nE $'bye\x1f0\x1e' + rm -f ${(q)req_fifo} ${(q)resp_fifo} + " <&$req_fd >&$resp_fd 2>$log &! daemon_pid=$!