aboutsummaryrefslogtreecommitdiff
path: root/gitstatus
diff options
context:
space:
mode:
authorromkatv <roman.perepelitsa@gmail.com>2019-07-24 13:11:11 +0300
committerromkatv <roman.perepelitsa@gmail.com>2019-07-24 13:11:11 +0300
commitd572fb974683123668065c5a4a778e8e57ca864f (patch)
tree33dd6edd31eafe4332dc3ed20cca11bfa0447fc7 /gitstatus
parent00b71dd3c303dc2ce0445eb4e76bb84b76c34085 (diff)
pull upstream changes from gitstatus
Diffstat (limited to 'gitstatus')
-rw-r--r--gitstatus/gitstatus.plugin.zsh8
1 files changed, 5 insertions, 3 deletions
diff --git a/gitstatus/gitstatus.plugin.zsh b/gitstatus/gitstatus.plugin.zsh
index 3a668e3a..615c85f6 100644
--- a/gitstatus/gitstatus.plugin.zsh
+++ b/gitstatus/gitstatus.plugin.zsh
@@ -356,12 +356,14 @@ function gitstatus_start() {
${(q)daemon}-static $daemon_args
fi
echo -nE $'bye\x1f0\x1e'"
- cmd="setopt monitor; zsh -dfxc ${(q)cmd} &!"
+ cmd="${commands[setsid]:-} zsh -dfxc ${(q)cmd} &!"
# We use `zsh -c` instead of plain {} or () to work around bugs in zplug. It hangs on startup.
# Double fork is to daemonize. Some macOS users had issues when gitstatusd was a child process
# of the interactive zsh. For example, https://github.com/romkatv/powerlevel10k/issues/123
- # and https://github.com/romkatv/powerlevel10k/issues/97.
- zsh -dfxc $cmd <$req_fifo >$resp_fifo 2>$log_file 3<$lock_file &!
+ # and https://github.com/romkatv/powerlevel10k/issues/97. If you are using macOS and seeing
+ # errors like `gitstatus_query:echo:32: write error: broken pipe`, install `setsid` utility
+ # by running `brew install util-linux`.
+ zsh -dfmxc $cmd <$req_fifo >$resp_fifo 2>$log_file 3<$lock_file &!
sysopen -w -o cloexec,sync -u req_fd $req_fifo
sysopen -r -o cloexec -u resp_fd $resp_fifo