Browse Source

Better love.arg.parse_options():

1. use string.match for we are mean to match
2. better match pattern which now do not allow somthing like `not-a-valid--console`
3. use while loop which allows change loop var.

--HG--
branch : better-parse-options
xpol 8 years ago
parent
commit
de855f30d5
1 changed files with 4 additions and 2 deletions
  1. 4 2
      src/scripts/boot.lua

+ 4 - 2
src/scripts/boot.lua

@@ -134,15 +134,17 @@ function love.arg.parse_options()
 	local game
 	local game
 	local argc = #arg
 	local argc = #arg
 
 
-	for i=1,argc do
+	local i = 1
+	while i <= argc do
 		-- Look for options.
 		-- Look for options.
-		local s, e, m = string.find(arg[i], "%-%-(.+)")
+		local m = string.match(arg[i], "^%-%-(.+)")
 
 
 		if m and love.arg.options[m] then
 		if m and love.arg.options[m] then
 			i = love.arg.parse_option(love.arg.options[m], i+1)
 			i = love.arg.parse_option(love.arg.options[m], i+1)
 		elseif not game then
 		elseif not game then
 			game = i
 			game = i
 		end
 		end
+		i = i + 1
 	end
 	end
 
 
 	if not love.arg.options.game.set then
 	if not love.arg.options.game.set then