diff --git a/objects/screen.c b/objects/screen.c index 200da4bb..7b0d0219 100644 --- a/objects/screen.c +++ b/objects/screen.c @@ -229,8 +229,11 @@ luaA_checkscreen(lua_State *L, int sidx) { int screen = lua_tointeger(L, sidx); if(screen < 1 || screen > globalconf.screens.len) - luaL_error(L, "invalid screen number: %d (of %d existing)", - screen, globalconf.screens.len); + { + luaA_warn(L, "invalid screen number: %d (of %d existing)", screen, globalconf.screens.len); + lua_pushnil(L); + return NULL; + } return globalconf.screens.tab[screen - 1]; } else return luaA_checkudata(L, sidx, &screen_class);