Closed darmado closed 3 hours ago
Root Cause:
T
Was in the check_antivirus
function,
I appended \n
, within each function call before it's sentr to $output
which overwrote the $output var strings before main()
. The intent was to make it look a little pretty.
the fix: For each funct ion, we modified the output accumulation from
output+=$'\n\n'$(command) to result=$(command); if [ -n "$result" ];
to:
output+="$result"$'\n'; fi
,
NOTE:
to preserve the prettiness without f*ing up --encode
and --encrypt
args, I passed the \n
over to main()
and
Also, the separate loops for each check type were replaced with a single loop that processes all arguments in a fixed order.
`for check in "$@"; do
case "$check" in
--av=*)
tool="${check#*=}"
output+="${separator}Antivirus Check ($tool):${separator}"
output+=$(check_antivirus "$tool")
;;
--ost=*)
tool="${check#*=}"
output+="${separator}OST Check ($tool):${separator}"
output+=$(check_ost "$tool")
;;
# ... (other check types)
esac
done`
see screen shots
Expected behavior
Actual behavior