From: Brian West Date: Thu, 14 May 2009 01:36:32 +0000 (+0000) Subject: MODLANG-111 X-Git-Tag: v1.0.4~907 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fc4e62b09ad3cd0f04cddd2295e11f5c92cbb373;p=thirdparty%2Ffreeswitch.git MODLANG-111 git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@13297 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- diff --git a/src/mod/languages/mod_lua/mod_lua.cpp b/src/mod/languages/mod_lua/mod_lua.cpp index 5034babc7a..c28f134ec7 100644 --- a/src/mod/languages/mod_lua/mod_lua.cpp +++ b/src/mod/languages/mod_lua/mod_lua.cpp @@ -213,7 +213,7 @@ static switch_xml_t lua_fetch(const char *section, if (!switch_strlen_zero(globals.xml_handler)) { lua_State *L = lua_init(); char *mycmd = strdup(globals.xml_handler); - const char *str; + char *str; switch_assert(mycmd); @@ -240,8 +240,8 @@ static switch_xml_t lua_fetch(const char *section, lua_parse_and_execute(L, mycmd); lua_getfield(L, LUA_GLOBALSINDEX, "XML_STRING"); - str = lua_tostring(L, 1); - + str = strdup( lua_tostring(L, 1) ); + if (str) { if (switch_strlen_zero(str)) { switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "No Result\n"); @@ -252,6 +252,7 @@ static switch_xml_t lua_fetch(const char *section, lua_uninit(L); free(mycmd); + free(str); } return xml;