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:
parent
2f3ecc87bf
commit
cb4fbe4ebb
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=330262
@ -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
|
||||||
|
Loading…
Reference in New Issue
Block a user