lua

A copy of the Lua development repository
Log | Files | Refs | README

commit 8bc33a088c99c21493dee173fb394003f3331454
parent c3eb89544fd6c435443ae0da7aa5b12491ed9689
Author: Roberto Ierusalimschy <roberto@inf.puc-rio.br>
Date:   Tue,  5 Oct 2010 09:17:39 -0300

'os.exit' acceps booleans as status (for EXIT_SUCESS and EXIT_FAILURE)

Diffstat:
Mloslib.c | 8++++++--
1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/loslib.c b/loslib.c @@ -1,5 +1,5 @@ /* -** $Id: loslib.c,v 1.30 2010/07/02 11:38:13 roberto Exp roberto $ +** $Id: loslib.c,v 1.31 2010/07/02 12:01:53 roberto Exp roberto $ ** Standard Operating System library ** See Copyright Notice in lua.h */ @@ -276,7 +276,11 @@ static int os_setlocale (lua_State *L) { static int os_exit (lua_State *L) { - int status = luaL_optint(L, 1, EXIT_SUCCESS); + int status; + if (lua_isboolean(L, 1)) + status = (lua_toboolean(L, 1) ? EXIT_SUCCESS : EXIT_FAILURE); + else + status = luaL_optint(L, 1, EXIT_SUCCESS); if (lua_toboolean(L, 2)) lua_close(L); exit(status);