commit ca9d48641b0e34bc486cba2dfd0c24cd2ecc9b4e parent edea7a802c93b1347a28b26efe8687b2fa38a9ca Author: Ayush Agarwal <ayush@fastmail.in> Date: Sun, 16 Jan 2022 18:51:40 +0530 refactor: change the find_backend function Recently, I realized that bash local variables aren't actually local and use dynamic scoping. Renaming `backend` to `dmbd` is just a precaution. Diffstat:
| M | tessen | | | 13 | +++++++------ |
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/tessen b/tessen @@ -380,14 +380,15 @@ get_default_opts() { } find_backend() { - local backend - for backend in "${tsn_known_backends[@]}"; do - if is_installed "${backend}"; then - printf "%s" "${backend}" + local dmbd + + for dmbd in "${tsn_known_backends[@]}"; do + if is_installed "$dmbd"; then + printf "%s" "$dmbd" return 0 fi done - _die "Please use '--backend' option or 'TESSEN_BACKEND' environment variable to configure installed 'dmenu' compatible application to use ${0##*/}" + _die "%s\n" "unable to find a 'dmenu' compatible application" } validate_cliptime() { @@ -471,7 +472,7 @@ main() { unset -v _opt if [[ -z "${tsn_backend}" ]]; then - tsn_backend=$(find_backend) + tsn_backend="$(find_backend)" fi setup_backend "${tsn_backend}"