Added storing of argv to love.argv, added args arg to love.load()

This commit is contained in:
rxi
2016-09-29 20:36:16 +01:00
parent 3fcaa3d86f
commit 7f965cc245
2 changed files with 22 additions and 2 deletions

View File

@@ -43,7 +43,7 @@ static int onLuaPanic(lua_State *L) {
int luaopen_love(lua_State *L);
int main(void) {
int main(int argc, char **argv) {
/* Init everything */
atexit(deinit);
@@ -59,6 +59,20 @@ int main(void) {
luaL_openlibs(L);
luaL_requiref(L, "love", luaopen_love, 1);
/* Create `love.argv` and fill with arguments */
lua_getglobal(L, "love");
if (!lua_isnil(L, -1)) {
lua_newtable(L);
int i;
for (i = 0; i < argc; i++) {
lua_pushstring(L, argv[i]);
lua_rawseti(L, -2, i + 1);
}
lua_setfield(L, -2, "argv");
}
lua_pop(L, 1);
/* Init embedded scripts */
#include "boot_lua.h"
int err = luaL_loadbuffer(L, boot_lua, sizeof(boot_lua) - 1, "boot.lua");