aboutsummaryrefslogtreecommitdiff
path: root/gitstatus/gitstatus.plugin.zsh
diff options
context:
space:
mode:
Diffstat (limited to 'gitstatus/gitstatus.plugin.zsh')
-rw-r--r--gitstatus/gitstatus.plugin.zsh12
1 files 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=$!