lualoader: Use #str instead of tracking length with 'n'

We really gain almost nothing by tracking length separately, especially when
it's as easy as "#str", so reduce complexity.
This commit is contained in:
kevans 2018-03-02 02:39:41 +00:00
parent fa054c625b
commit f584f48024

View File

@ -42,7 +42,6 @@ local twiddle_chars = {"/", "-", "\\", "|"}
-- Module exports -- Module exports
function password.read(prompt_length) function password.read(prompt_length)
local str = "" local str = ""
local n = 0
local twiddle_pos = 1 local twiddle_pos = 1
local function draw_twiddle() local function draw_twiddle()
@ -60,14 +59,13 @@ function password.read(prompt_length)
break break
end end
if ch == core.KEY_BACKSPACE or ch == core.KEY_DELETE then if ch == core.KEY_BACKSPACE or ch == core.KEY_DELETE then
if n > 0 then if #str > 0 then
n = n - 1
if show_password_mask then if show_password_mask then
loader.printc("\008 \008") loader.printc("\008 \008")
else else
draw_twiddle() draw_twiddle()
end end
str = str:sub(1, n) str = str:sub(1, #str - 1)
end end
else else
if show_password_mask then if show_password_mask then
@ -76,7 +74,6 @@ function password.read(prompt_length)
draw_twiddle() draw_twiddle()
end end
str = str .. string.char(ch) str = str .. string.char(ch)
n = n + 1
end end
end end
return str return str