From 2885c1cf35988f8c2f5a558cc38bde3a09a7d605 Mon Sep 17 00:00:00 2001 From: Scott Baxter Date: Mon, 21 Apr 2025 22:58:50 -0500 Subject: [PATCH] fix: Worker no longer leaves defunct pid on macOS --- internal/worker.zsh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/internal/worker.zsh b/internal/worker.zsh index 269e8aad..5d7275b1 100644 --- a/internal/worker.zsh +++ b/internal/worker.zsh @@ -19,7 +19,9 @@ function _p9k_worker_main() { # usage: _p9k_worker_async function _p9k_worker_async() { local fd async=$1 - sysopen -r -o cloexec -u fd <(() { eval $async; } && print -n '\x1e') || return + (print -n '\x1e' &) + pid=$! + wait $pid || return 1 (( ++_p9k_worker_inflight[$_p9k_worker_request_id] )) _p9k_worker_fds[$fd]=$_p9k_worker_request_id$'\x1f'$2 }