From cafdc1620b5e57ac744064c448682bd417cabcb4 Mon Sep 17 00:00:00 2001 From: lethosor Date: Fri, 24 Jul 2020 22:15:35 -0400 Subject: [PATCH] Improve Lua listdir_recursive error handling Ref #519, #1609 --- library/LuaApi.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/library/LuaApi.cpp b/library/LuaApi.cpp index c20be4618..5b731ecc7 100644 --- a/library/LuaApi.cpp +++ b/library/LuaApi.cpp @@ -2404,10 +2404,10 @@ static int filesystem_listdir_recursive(lua_State *L) luaL_checktype(L,1,LUA_TSTRING); std::string dir=lua_tostring(L,1); int depth = 10; - if (lua_type(L, 2) == LUA_TNUMBER) - depth = lua_tounsigned(L, 2); + if (lua_gettop(L) >= 2) + depth = luaL_checkint(L, 2); bool include_prefix = true; - if (lua_type(L, 3) == LUA_TBOOLEAN) + if (lua_gettop(L) >= 3) include_prefix = lua_toboolean(L, 3); std::map files; int err = DFHack::Filesystem::listdir_recursive(dir, files, depth, include_prefix);