From 6a89a111f55e3edb9867ce8b27e791d3ec59e0f8 Mon Sep 17 00:00:00 2001 From: CanbiZ <47820557+MickLesk@users.noreply.github.com> Date: Wed, 26 Mar 2025 19:01:06 +0100 Subject: [PATCH] Update build.func --- misc/build.func | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/misc/build.func b/misc/build.func index 9a4431f..f7e8de8 100644 --- a/misc/build.func +++ b/misc/build.func @@ -119,18 +119,35 @@ stop_spinner() { SPINNER_ACTIVE=0 } +declare -A MSG_INFO_SHOWN + msg_info() { local msg="$1" - stop_spinner + if [[ -n "${MSG_INFO_SHOWN["$msg"]}" ]]; then + return + fi + MSG_INFO_SHOWN["$msg"]=1 + + if [ "${SPINNER_ACTIVE:-0}" -eq 1 ]; then + return + fi + SPINNER_ACTIVE=1 start_spinner "$msg" } msg_ok() { - stop_spinner local msg="$1" - printf "\r\e[2K${CM}${GN}%b${CL}\n" "$msg" >&2 - log_message "OK" "$msg" + if [ -n "${SPINNER_PID:-}" ]; then + while ps -p "$SPINNER_PID" >/dev/null 2>&1; do + kill "$SPINNER_PID" >/dev/null 2>&1 || break + wait "$SPINNER_PID" 2>/dev/null || true + done + fi + printf "\e[?25h\r\e[2K${CM}${GN}%b${CL}\n" "$msg" >&2 + + unset SPINNER_PID + SPINNER_ACTIVE=0 } msg_error() {