From be6984018230b2952be1fbeab2ef8b6e9759b327 Mon Sep 17 00:00:00 2001 From: gobborg Date: Thu, 3 Aug 2023 23:06:36 +0900 Subject: [PATCH] Actually handling the null response instead of galaxy brained putting a 'continue' as a placeholder in a conditional tree. --- install | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/install b/install index cbbeb6f..a9c9e0f 100755 --- a/install +++ b/install @@ -67,16 +67,23 @@ function install_configuration_file { # ask user if we overwrite configuration echo "Old conf file found in $CONF_TARGET" >&2 read -r -p "Keep the old conf file? (default: yes) [Y/n] " response >&2 - if ! [[ "${response,,}" =~ ^(no|n)$ ]] || [[ "$response" == "" ]]; then - continue - else + + # If response is empty, consider it as 'yes' (default) + if [[ -z "$response" ]]; then + response="y" + fi + + if [[ "${response,,}" =~ ^(no|n)$ ]]; then # MAKE SURE they really want to overwrite read -r -p "Conf file will be overwritten! Are you sure? [Y/n] " response >&2 - if ! [[ "${response,,}" =~ ^(no|n)$ ]] || [[ "$response" == "" ]]; then + if [[ -z "$response" ]]; then + response="y" + fi + if [[ "${response,,}" =~ ^(no|n)$ ]]; then + abort + else # They agreed... replace configuration cat "$CONF_SOURCE" > "$CONF_TARGET" - else - abort fi fi else