svn commit: r330262 - head/stand/lua

Kyle Evans kevans at FreeBSD.org
Fri Mar 2 02:39:41 UTC 2018


Author: kevans
Date: Fri Mar  2 02:39:41 2018
New Revision: 330262
URL: https://svnweb.freebsd.org/changeset/base/330262

Log:
  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.

Modified:
  head/stand/lua/password.lua

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


More information about the svn-src-all mailing list