From ee67de3e97ae4f7dc8146a9387ca28952066ee10 Mon Sep 17 00:00:00 2001 From: Chris Beck Date: Mon, 10 Nov 2014 20:20:52 -0500 Subject: [PATCH] add a null pointer check --- src/scripting/lua_gui2.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/scripting/lua_gui2.cpp b/src/scripting/lua_gui2.cpp index f858725999c1..94d525ef80aa 100644 --- a/src/scripting/lua_gui2.cpp +++ b/src/scripting/lua_gui2.cpp @@ -20,6 +20,7 @@ #include "gui/widgets/listbox.hpp" #endif +#include "log.hpp" #include "lua/lauxlib.h" // for luaL_checkinteger, etc #include "lua/lua.h" // for lua_setfield, etc #include "resources.hpp" // for resources::screen @@ -29,6 +30,9 @@ #include +static lg::log_domain log_scripting_lua("scripting/lua"); +#define ERR_LUA LOG_STREAM(err, log_scripting_lua) + namespace { struct scoped_dialog { @@ -145,6 +149,12 @@ gui2::twidget *find_widget(lua_State *L, int i, bool readonly) */ int intf_show_dialog(lua_State *L) { + if (!resources::screen) { + ERR_LUA << "Cannot show dialog, the display object is not available."; + lua_error(L); + return 0; + } + config def_cfg = luaW_checkconfig(L, 1); gui2::twindow_builder::tresolution def(def_cfg);