svn commit: r329716 - head/stand/lua

Kyle Evans kevans at FreeBSD.org
Wed Feb 21 14:37:50 UTC 2018


Author: kevans
Date: Wed Feb 21 14:37:49 2018
New Revision: 329716
URL: https://svnweb.freebsd.org/changeset/base/329716

Log:
  lualoader: Use the key that interrupts autoboot as a menu choice
  
  This matches forth behavior. Hitting "6" when autobooting at the welcome
  menu will now take you directly to the "Boot Options" menu.
  
  We likely have some slight optimizations we should make, like not checking
  autoboot every time we open a new menu and things of this nature. Further
  work will go towards this end.

Modified:
  head/stand/lua/menu.lua

Modified: head/stand/lua/menu.lua
==============================================================================
--- head/stand/lua/menu.lua	Wed Feb 21 14:33:00 2018	(r329715)
+++ head/stand/lua/menu.lua	Wed Feb 21 14:37:49 2018	(r329716)
@@ -291,11 +291,13 @@ function menu.run(m)
 	screen.defcursor()
 	local alias_table = drawer.drawscreen(m)
 
-	menu.autoboot()
+	-- Might return nil, that's ok
+	local autoboot_key = menu.autoboot()
 
 	cont = true
 	while cont do
-		local key = io.getchar()
+		local key = autoboot_key or io.getchar()
+		autoboot_key = nil
 
 		-- Special key behaviors
 		if (key == core.KEY_BACKSPACE or key == core.KEY_DELETE) and
@@ -360,13 +362,13 @@ end
 
 function menu.autoboot()
 	if menu.already_autoboot then
-		return
+		return nil
 	end
 	menu.already_autoboot = true
 
 	local ab = loader.getenv("autoboot_delay")
 	if ab ~= nil and ab:lower() == "no" then
-		return
+		return nil
 	elseif tonumber(ab) == -1 then
 		core.boot()
 	end
@@ -395,7 +397,7 @@ function menu.autoboot()
 				print("                                        "
 				    .. "                                        ")
 				screen.defcursor()
-				return
+				return ch
 			end
 		end
 


More information about the svn-src-all mailing list