From 0a286533559d03bff54b267f516910ff9336efa5 Mon Sep 17 00:00:00 2001 From: romkatv Date: Sat, 22 Feb 2020 18:19:28 +0100 Subject: [PATCH] optimize worker i/o --- internal/worker.zsh | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/internal/worker.zsh b/internal/worker.zsh index 10d0c93a..6f6cb57e 100644 --- a/internal/worker.zsh +++ b/internal/worker.zsh @@ -50,9 +50,12 @@ function _p9k_worker_main() { else local REPLY= while true; do - sysread -i $fd 'REPLY[$#REPLY+1]' && continue - (( $? == 5 )) || return - break + if sysread -i $fd 'REPLY[$#REPLY+1]'; then + [[ $REPLY == *$'\x1e' ]] || continue + else + (( $? == 5 )) || return + break + fi done local cb=$_p9k_worker_fds[$fd] _p9k_worker_request_id=${cb%%$'\x1f'*}