From 75e619b72421e7330011c8bda5f99af5231a8b7d Mon Sep 17 00:00:00 2001 From: Yannick Eckey Date: Thu, 15 Oct 2015 15:37:30 +0200 Subject: [PATCH] Fix install.sh/upgrade.sh for tput-less systems @fcrozat's original fix assumes `which` not to output anything to STDOUT in case the command is not found. That is not necessarily true on all systems. A better solution is to check the return value instead. Fixes #4376 --- tools/install.sh | 5 ++--- tools/upgrade.sh | 3 +-- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/tools/install.sh b/tools/install.sh index 5633320a..542bf97c 100755 --- a/tools/install.sh +++ b/tools/install.sh @@ -2,9 +2,8 @@ set -e # Use colors, but only if connected to a terminal, and that terminal # supports them. -tput=$(which tput) -if [ -n "$tput" ]; then - ncolors=$($tput colors) +if which tput >/dev/null 2>&1; then + ncolors=$(tput colors) fi if [ -t 1 ] && [ -n "$ncolors" ] && [ "$ncolors" -ge 8 ]; then RED="$(tput setaf 1)" diff --git a/tools/upgrade.sh b/tools/upgrade.sh index 6e969620..fe8fbadc 100644 --- a/tools/upgrade.sh +++ b/tools/upgrade.sh @@ -1,8 +1,7 @@ # Use colors, but only if connected to a terminal, and that terminal # supports them. -tput=$(which tput) -if [ -n "$tput" ]; then +if which tput >/dev/null 2>&1; then ncolors=$(tput colors) fi if [ -t 1 ] && [ -n "$ncolors" ] && [ "$ncolors" -ge 8 ]; then