diff --git a/src/mod/languages/mod_lua/freeswitch_lua.cpp b/src/mod/languages/mod_lua/freeswitch_lua.cpp
index 96897a24c9..679c9fbee4 100644
--- a/src/mod/languages/mod_lua/freeswitch_lua.cpp
+++ b/src/mod/languages/mod_lua/freeswitch_lua.cpp
@@ -4,7 +4,7 @@
 using namespace LUA;
 
 extern "C" {
-	int docall(lua_State * L, int narg, int clear, int perror);
+	int docall(lua_State * L, int narg, int nresults, int perror);
 };
 
 Session::Session():CoreSession()
@@ -147,7 +147,7 @@ void Session::do_hangup_hook()
 			arg_count++;
 		}
 
-		docall(L, arg_count, 0, 1);
+		docall(L, arg_count, 1, 1);
 
 		const char *err = lua_tostring(L, -1);
 		
@@ -294,7 +294,7 @@ switch_status_t Session::run_dtmf_callback(void *input, switch_input_type_t ityp
 				arg_count++;
 			}
 
-			docall(L, arg_count, 0, 1);
+			docall(L, arg_count, 1, 1);
 
 			ret = lua_tostring(L, -1);
 			lua_pop(L, 1);
@@ -319,7 +319,7 @@ switch_status_t Session::run_dtmf_callback(void *input, switch_input_type_t ityp
 				arg_count++;
 			}
 
-			docall(L, arg_count, 0, 1);
+			docall(L, arg_count, 1, 1);
 			ret = lua_tostring(L, -1);
 			lua_pop(L, 1);
 
@@ -397,7 +397,7 @@ int Dbh::query_callback(void *pArg, int argc, char **argv, char **cargv)
     lua_settable(lua_fun->L, -3);
   }
 
-	docall(lua_fun->L, 1, 0, 1);
+	docall(lua_fun->L, 1, 1, 1);
 	ret = lua_tonumber(lua_fun->L, -1);
 	lua_pop(lua_fun->L, 1);
 
diff --git a/src/mod/languages/mod_lua/mod_lua.cpp b/src/mod/languages/mod_lua/mod_lua.cpp
index 765bdfcc98..1a2814a801 100644
--- a/src/mod/languages/mod_lua/mod_lua.cpp
+++ b/src/mod/languages/mod_lua/mod_lua.cpp
@@ -80,7 +80,7 @@ static int traceback(lua_State * L)
 	return 1;
 }
 
-int docall(lua_State * L, int narg, int clear, int perror)
+int docall(lua_State * L, int narg, int nresults, int perror)
 {
 	int status;
 	int base = lua_gettop(L) - narg;	/* function index */
@@ -88,7 +88,7 @@ int docall(lua_State * L, int narg, int clear, int perror)
 	lua_pushcfunction(L, traceback);	/* push traceback function */
 	lua_insert(L, base);		/* put it under chunk and args */
 
-	status = lua_pcall(L, narg, (clear ? 0 : LUA_MULTRET), base);
+	status = lua_pcall(L, narg, nresults, base);
 
 	lua_remove(L, base);		/* remove traceback function */
 	/* force a complete garbage collection in case of errors */