From d19afb24c207c2324e93eb834439d468de7f0cdc Mon Sep 17 00:00:00 2001 From: P. J. McDermott Date: Thu, 29 Oct 2015 00:16:50 -0400 Subject: tui_show_prompt(): Enforce range on cursor position --- (limited to 'src/ui/tui.sh') diff --git a/src/ui/tui.sh b/src/ui/tui.sh index 962e731..74211d7 100644 --- a/src/ui/tui.sh +++ b/src/ui/tui.sh @@ -252,19 +252,25 @@ tui_show_prompt() case "${key}" in KEY_ENTER) break;; KEY_BACKSPACE) - input="${input%?}" - curpos=$(($curpos - 1)) + if [ ${curpos} -gt 0 ]; then + input="${input%?}" + curpos=$(($curpos - 1)) + fi ;; KEY_DEL) ;; # TODO: Line editing KEY_SPACE) - input="${input} " - curpos=$(($curpos + 1)) + if [ ${curpos} -lt ${len} ]; then + input="${input} " + curpos=$(($curpos + 1)) + fi ;; *) - input="${input}${key}" - curpos=$(($curpos + 1)) + if [ ${curpos} -lt ${len} ]; then + input="${input}${key}" + curpos=$(($curpos + 1)) + fi ;; esac elif [ ${focus} -eq 1 ]; then -- cgit v0.9.1