Added error checking to lua calls
This commit is contained in:
parent
32f4ee7b8f
commit
f89129d82e
18
main.c
18
main.c
|
@ -19,7 +19,7 @@
|
||||||
#define OCT_VERS 5
|
#define OCT_VERS 5
|
||||||
#define OCT_INVALID_ARGUMENT 6
|
#define OCT_INVALID_ARGUMENT 6
|
||||||
#define OCT_NETWORK_ERROR 7
|
#define OCT_NETWORK_ERROR 7
|
||||||
#define OCT_LUA_FILE_SYNTAX_ERROR 8
|
#define OCT_LUA_FILE_ERROR 8
|
||||||
|
|
||||||
#define OCT_MAX_FILENAME_SIZE 1024
|
#define OCT_MAX_FILENAME_SIZE 1024
|
||||||
|
|
||||||
|
@ -81,8 +81,8 @@ int main(int argc, char* argv[]) {
|
||||||
fprintf(stderr, "Error: network\n");
|
fprintf(stderr, "Error: network\n");
|
||||||
deinitialize_everything();
|
deinitialize_everything();
|
||||||
return EXIT_FAILURE;
|
return EXIT_FAILURE;
|
||||||
case OCT_LUA_FILE_SYNTAX_ERROR:
|
case OCT_LUA_FILE_ERROR:
|
||||||
fprintf(stderr, "Error: given lua file had syntax error\n");
|
fprintf(stderr, "Error: given lua file had error\n");
|
||||||
deinitialize_everything();
|
deinitialize_everything();
|
||||||
return EXIT_FAILURE;
|
return EXIT_FAILURE;
|
||||||
}
|
}
|
||||||
|
@ -118,7 +118,10 @@ int main(int argc, char* argv[]) {
|
||||||
lua_getglobal(L, "oct_loop");
|
lua_getglobal(L, "oct_loop");
|
||||||
lua_pushinteger(L, 0);
|
lua_pushinteger(L, 0);
|
||||||
lua_pushinteger(L, 0);
|
lua_pushinteger(L, 0);
|
||||||
lua_call(L, 2, 0);
|
if (lua_pcall(L, 2, 0, 0) != LUA_OK) {
|
||||||
|
OCT_LOG_ERROR("%s", luaL_checkstring(L, -1));
|
||||||
|
finish = 1;
|
||||||
|
}
|
||||||
oct_network_send_msg();
|
oct_network_send_msg();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -227,11 +230,14 @@ int initialize_everything(char* lua_file) {
|
||||||
oct_log_init_lua(L);
|
oct_log_init_lua(L);
|
||||||
if (luaL_dofile(L, lua_file)) {
|
if (luaL_dofile(L, lua_file)) {
|
||||||
OCT_LOG_ERROR("%s", luaL_checkstring(L, -1));
|
OCT_LOG_ERROR("%s", luaL_checkstring(L, -1));
|
||||||
return OCT_LUA_FILE_SYNTAX_ERROR;
|
return OCT_LUA_FILE_ERROR;
|
||||||
}
|
}
|
||||||
OCT_LOG_INFO("Begin running oct_init()");
|
OCT_LOG_INFO("Begin running oct_init()");
|
||||||
lua_getglobal(L, "oct_init");
|
lua_getglobal(L, "oct_init");
|
||||||
lua_call(L, 0, 2);
|
if (lua_pcall(L, 0, 2, 0) != LUA_OK) {
|
||||||
|
OCT_LOG_ERROR("%s", luaL_checkstring(L, -1));
|
||||||
|
return OCT_LUA_FILE_ERROR;
|
||||||
|
}
|
||||||
config.needs_networking = lua_tointeger(L, -2);
|
config.needs_networking = lua_tointeger(L, -2);
|
||||||
config.needs_termbox = lua_tointeger(L, -1);
|
config.needs_termbox = lua_tointeger(L, -1);
|
||||||
OCT_LOG_INFO("Finish running oct_init()");
|
OCT_LOG_INFO("Finish running oct_init()");
|
||||||
|
|
Loading…
Reference in New Issue