---- mod_lua_wrap.cpp.old 2025-01-15 13:22:48.705853645 +0000
-+++ mod_lua_wrap.cpp 2025-01-15 13:23:33.161847705 +0000
-@@ -4242,7 +4242,7 @@
- }
-
- result = (char *)(arg1)->read(arg2);
-- lua_pushstring(L,(const char *)result); SWIG_arg++;
-+ lua_pushlstring(L,(const char*)result, (*arg2)); SWIG_arg++;
- lua_pushnumber(L, (lua_Number) *arg2); SWIG_arg++;
- return SWIG_arg;
-
-@@ -8336,7 +8336,7 @@
-
- SWIG_check_num_args("LUA::Session::Session",0,0)
- result = (LUA::Session *)new LUA::Session();
-- SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++;
-+ SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++; result->setLUA(L);
- return SWIG_arg;
-
- if(0) SWIG_fail;
-@@ -8363,7 +8363,7 @@
- }
-
- result = (LUA::Session *)new LUA::Session(arg1,arg2);
-- SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++;
-+ SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++; result->setLUA(L);
- return SWIG_arg;
-
- if(0) SWIG_fail;
-@@ -8383,7 +8383,7 @@
- if(!SWIG_lua_isnilstring(L,1)) SWIG_fail_arg("LUA::Session::Session",1,"char *");
- arg1 = (char *)lua_tostring(L, 1);
- result = (LUA::Session *)new LUA::Session(arg1);
-- SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++;
-+ SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++; result->setLUA(L);
- return SWIG_arg;
-
- if(0) SWIG_fail;
-@@ -8407,7 +8407,7 @@
- }
-
- result = (LUA::Session *)new LUA::Session(arg1);
-- SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++;
-+ SWIG_NewPointerObj(L,result,SWIGTYPE_p_LUA__Session,1); SWIG_arg++; result->setLUA(L);
- return SWIG_arg;
-
- if(0) SWIG_fail;
-@@ -9517,6 +9517,7 @@
- arg2 = (char *)lua_tostring(L, 2);
- arg3 = (char *)lua_tostring(L, 3);
- arg4 = (char *)lua_tostring(L, 4);
-+ switch_assert(arg1);
- result = (bool)(arg1)->test_reactive(arg2,arg3,arg4);
- lua_pushboolean(L,(int)(result!=0)); SWIG_arg++;
- return SWIG_arg;
-@@ -9547,6 +9548,7 @@
-
- arg2 = (char *)lua_tostring(L, 2);
- arg3 = (char *)lua_tostring(L, 3);
-+ switch_assert(arg1);
- result = (bool)(arg1)->test_reactive(arg2,arg3);
- lua_pushboolean(L,(int)(result!=0)); SWIG_arg++;
- return SWIG_arg;
-@@ -9574,6 +9576,7 @@
- }
-
- arg2 = (char *)lua_tostring(L, 2);
-+ switch_assert(arg1);
- result = (bool)(arg1)->test_reactive(arg2);
- lua_pushboolean(L,(int)(result!=0)); SWIG_arg++;
- return SWIG_arg;
-@@ -9704,6 +9707,7 @@
- (&arg3)->idx = 3;
+--- mod_lua_wrap.cpp.old 2025-07-09 10:36:02.165895047 +0000
++++ mod_lua_wrap.cpp 2025-07-09 10:46:12.289624035 +0000
+@@ -9639,6 +9639,7 @@
}
- }
-+ switch_assert(arg1);
- result = (bool)(arg1)->query(arg2,arg3);
- lua_pushboolean(L,(int)(result!=0)); SWIG_arg++;
- return SWIG_arg;
-@@ -9733,6 +9737,7 @@
- }
-
- arg3 = (char *)lua_tostring(L, 2);
-+ switch_assert(arg1);
- result = (arg1)->query_rows(arg2,arg3);
- {
- SWIG_arg += result;
-@@ -9758,7 +9763,7 @@
- if (!SWIG_IsOK(SWIG_ConvertPtr(L,1,(void**)&arg1,SWIGTYPE_p_LUA__Dbh,0))){
- SWIG_fail_ptr("Dbh_affected_rows",1,SWIGTYPE_p_LUA__Dbh);
- }
--
-+ switch_assert(arg1);
- result = (int)(arg1)->affected_rows();
- lua_pushnumber(L, (lua_Number) result); SWIG_arg++;
- return SWIG_arg;
-@@ -9782,7 +9787,7 @@
- if (!SWIG_IsOK(SWIG_ConvertPtr(L,1,(void**)&arg1,SWIGTYPE_p_LUA__Dbh,0))){
- SWIG_fail_ptr("Dbh_last_error",1,SWIGTYPE_p_LUA__Dbh);
- }
--
-+ switch_assert(arg1);
- result = (char *)(arg1)->last_error();
- lua_pushstring(L,(const char *)result); SWIG_arg++;
- return SWIG_arg;
-@@ -9805,7 +9810,7 @@
- if (!SWIG_IsOK(SWIG_ConvertPtr(L,1,(void**)&arg1,SWIGTYPE_p_LUA__Dbh,0))){
- SWIG_fail_ptr("Dbh_clear_error",1,SWIGTYPE_p_LUA__Dbh);
- }
--
-+ switch_assert(arg1);
- (arg1)->clear_error();
-
- return SWIG_arg;
-@@ -9833,6 +9838,7 @@
- }
-
- arg2 = (char *)lua_tostring(L, 2);
-+ switch_assert(arg1);
- result = (int)(arg1)->load_extension((char const *)arg2);
- lua_pushnumber(L, (lua_Number) result); SWIG_arg++;
- return SWIG_arg;
-@@ -9933,6 +9939,7 @@
- }
-
- arg2 = (char *)lua_tostring(L, 2);
-+ switch_assert(arg1);
- result = (cJSON *)(arg1)->decode((char const *)arg2);
- {
- SWIG_arg += LUA::JSON::cJSON2LuaTable(L, result);
-@@ -9966,6 +9973,7 @@
- (&arg2)->L = L;
- (&arg2)->idx = 2;
- }
-+ switch_assert(arg1);
- result = (arg1)->encode(arg2);
- lua_pushlstring(L,(&result)->data(),(&result)->size()); SWIG_arg++;
- return SWIG_arg;
-@@ -9993,6 +10001,7 @@
- }
-
- arg2 = (char *)lua_tostring(L, 2);
-+ switch_assert(arg1);
- result = (cJSON *)(arg1)->execute((char const *)arg2);
- {
- SWIG_arg += LUA::JSON::cJSON2LuaTable(L, result);
-@@ -10026,6 +10035,7 @@
- (&arg2)->L = L;
- (&arg2)->idx = 2;
- }
-+ switch_assert(arg1);
- result = (cJSON *)(arg1)->execute(arg2);
- {
- SWIG_arg += LUA::JSON::cJSON2LuaTable(L, result);
-@@ -10110,6 +10120,7 @@
- }
-
- arg2 = (char *)lua_tostring(L, 2);
-+ switch_assert(arg1);
- result = (arg1)->execute2((char const *)arg2);
- lua_pushlstring(L,(&result)->data(),(&result)->size()); SWIG_arg++;
- return SWIG_arg;
-@@ -10140,6 +10151,7 @@
- (&arg2)->L = L;
- (&arg2)->idx = 2;
- }
-+ switch_assert(arg1);
- result = (arg1)->execute2(arg2);
- lua_pushlstring(L,(&result)->data(),(&result)->size()); SWIG_arg++;
- return SWIG_arg;
-@@ -10220,6 +10232,7 @@
- }
-
- arg2 = (lua_toboolean(L, 2)!=0);
-+ switch_assert(arg1);
- (arg1)->encode_empty_table_as_object(arg2);
-
- return SWIG_arg;
-@@ -10246,6 +10259,7 @@
- }
-
- arg2 = (lua_toboolean(L, 2)!=0);
-+ switch_assert(arg1);
- (arg1)->return_unformatted_json(arg2);
-
- return SWIG_arg;
+
+ arg2 = (char *)lua_tostring(L, 2);
++ switch_assert(arg1);
+ result = (bool)(arg1)->test_reactive(arg2);
+ lua_pushboolean(L,(int)(result!=0)); SWIG_arg++;
+ return SWIG_arg;
+@@ -9769,6 +9770,7 @@
+ (&arg3)->idx = 3;
+ }
+ }
++ switch_assert(arg1);
+ result = (bool)(arg1)->query(arg2,arg3);
+ lua_pushboolean(L,(int)(result!=0)); SWIG_arg++;
+ return SWIG_arg;
+@@ -9798,6 +9800,7 @@
+ }
+
+ arg3 = (char *)lua_tostring(L, 2);
++ switch_assert(arg1);
+ result = (arg1)->query_rows(arg2,arg3);
+ {
+ SWIG_arg += result;
+@@ -9824,6 +9827,7 @@
+ SWIG_fail_ptr("Dbh_affected_rows",1,SWIGTYPE_p_LUA__Dbh);
+ }
+
++ switch_assert(arg1);
+ result = (int)(arg1)->affected_rows();
+ lua_pushnumber(L, (lua_Number) result); SWIG_arg++;
+ return SWIG_arg;
+@@ -9848,6 +9852,7 @@
+ SWIG_fail_ptr("Dbh_last_error",1,SWIGTYPE_p_LUA__Dbh);
+ }
+
++ switch_assert(arg1);
+ result = (char *)(arg1)->last_error();
+ lua_pushstring(L,(const char *)result); SWIG_arg++;
+ return SWIG_arg;
+@@ -9871,6 +9876,7 @@
+ SWIG_fail_ptr("Dbh_clear_error",1,SWIGTYPE_p_LUA__Dbh);
+ }
+
++ switch_assert(arg1);
+ (arg1)->clear_error();
+
+ return SWIG_arg;
+@@ -9898,6 +9904,7 @@
+ }
+
+ arg2 = (char *)lua_tostring(L, 2);
++ switch_assert(arg1);
+ result = (int)(arg1)->load_extension((char const *)arg2);
+ lua_pushnumber(L, (lua_Number) result); SWIG_arg++;
+ return SWIG_arg;
+@@ -9998,6 +10005,7 @@
+ }
+
+ arg2 = (char *)lua_tostring(L, 2);
++ switch_assert(arg1);
+ result = (cJSON *)(arg1)->decode((char const *)arg2);
+ {
+ SWIG_arg += LUA::JSON::cJSON2LuaTable(L, result);
+@@ -10031,6 +10039,7 @@
+ (&arg2)->L = L;
+ (&arg2)->idx = 2;
+ }
++ switch_assert(arg1);
+ result = (arg1)->encode(arg2);
+ lua_pushlstring(L,(&result)->data(),(&result)->size()); SWIG_arg++;
+ return SWIG_arg;
+@@ -10058,6 +10067,7 @@
+ }
+
+ arg2 = (char *)lua_tostring(L, 2);
++ switch_assert(arg1);
+ result = (cJSON *)(arg1)->execute((char const *)arg2);
+ {
+ SWIG_arg += LUA::JSON::cJSON2LuaTable(L, result);
+@@ -10091,6 +10101,7 @@
+ (&arg2)->L = L;
+ (&arg2)->idx = 2;
+ }
++ switch_assert(arg1);
+ result = (cJSON *)(arg1)->execute(arg2);
+ {
+ SWIG_arg += LUA::JSON::cJSON2LuaTable(L, result);
+@@ -10175,6 +10186,7 @@
+ }
+
+ arg2 = (char *)lua_tostring(L, 2);
++ switch_assert(arg1);
+ result = (arg1)->execute2((char const *)arg2);
+ lua_pushlstring(L,(&result)->data(),(&result)->size()); SWIG_arg++;
+ return SWIG_arg;
+@@ -10205,6 +10217,7 @@
+ (&arg2)->L = L;
+ (&arg2)->idx = 2;
+ }
++ switch_assert(arg1);
+ result = (arg1)->execute2(arg2);
+ lua_pushlstring(L,(&result)->data(),(&result)->size()); SWIG_arg++;
+ return SWIG_arg;
+@@ -10285,6 +10298,7 @@
+ }
+
+ arg2 = (lua_toboolean(L, 2)!=0);
++ switch_assert(arg1);
+ (arg1)->encode_empty_table_as_object(arg2);
+
+ return SWIG_arg;
+@@ -10311,6 +10325,7 @@
+ }
+
+ arg2 = (lua_toboolean(L, 2)!=0);
++ switch_assert(arg1);
+ (arg1)->return_unformatted_json(arg2);
+
+ return SWIG_arg;
---- mod_python_wrap.cpp.old 2015-06-16 12:56:23.868000000 -0500
-+++ mod_python_wrap.cpp 2015-06-16 12:56:32.268000000 -0500
-@@ -3500,7 +3500,9 @@ SWIG_AsCharArray(PyObject * obj, char *val, size_t size)
+--- mod_python_wrap.cpp.old 2024-11-08 21:22:49.064934340 +0000
++++ mod_python_wrap.cpp 2024-11-12 13:45:20.822756877 +0000
+@@ -3492,7 +3492,9 @@
if (csize <= size) {
if (val) {
if (csize) memcpy(val, cptr, csize*sizeof(char));
}
if (alloc == SWIG_NEWOBJ) {
delete[] cptr;
-@@ -4677,7 +4677,7 @@ SWIGINTERN PyObject *_wrap_DTMF_digit_set(PyObject *SWIGUNUSEDPARM(self), PyObje
+@@ -4689,7 +4691,7 @@
char arg2 ;
void *argp1 = 0 ;
int res1 = 0 ;
- char val2 ;
+ char val2 = '\0';
int ecode2 = 0 ;
- PyObject * obj0 = 0 ;
- PyObject * obj1 = 0 ;
-@@ -4787,7 +4787,7 @@ SWIGINTERN PyObject *_wrap_new_DTMF(PyObject *SWIGUNUSEDPARM(self), PyObject *ar
+ PyObject *swig_obj[2] ;
+
+@@ -4799,7 +4801,7 @@
PyObject *resultobj = 0;
char arg1 ;
uint32_t arg2 = (uint32_t) SWITCH_DEFAULT_DTMF_DURATION ;
int ecode1 = 0 ;
void *argp2 ;
int res2 = 0 ;
-@@ -6198,7 +6198,9 @@
+@@ -6371,7 +6373,9 @@
}
arg3 = static_cast< int >(val3);
}
resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_Event, SWIG_POINTER_OWN | 0 );
return resultobj;
fail:
-@@ -9264,20 +9266,20 @@
- }
-
-
--SWIGINTERN PyObject *_wrap_new_Session__SWIG_0(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-+SWIGINTERN PyObject *_wrap_new_Session__SWIG_0(PyObject *self, PyObject *args) {
- PyObject *resultobj = 0;
- PYTHON::Session *result = 0 ;
+@@ -9779,7 +9783,7 @@
- if (!PyArg_ParseTuple(args,(char *)":new_Session")) SWIG_fail;
+ if ((nobjs < 0) || (nobjs > 0)) SWIG_fail;
result = (PYTHON::Session *)new PYTHON::Session();
- resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_PYTHON__Session, SWIG_POINTER_NEW | 0 );
+ resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_PYTHON__Session, SWIG_POINTER_NEW | 0 ); result->setPython(self);
return resultobj;
fail:
return NULL;
- }
-
-
--SWIGINTERN PyObject *_wrap_new_Session__SWIG_1(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-+SWIGINTERN PyObject *_wrap_new_Session__SWIG_1(PyObject *self, PyObject *args) {
- PyObject *resultobj = 0;
- char *arg1 = (char *) 0 ;
- CoreSession *arg2 = (CoreSession *) 0 ;
-@@ -9302,7 +9304,7 @@
+@@ -9809,7 +9813,7 @@
}
arg2 = reinterpret_cast< CoreSession * >(argp2);
result = (PYTHON::Session *)new PYTHON::Session(arg1,arg2);
if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
return resultobj;
fail:
-@@ -9311,7 +9313,7 @@
- }
-
-
--SWIGINTERN PyObject *_wrap_new_Session__SWIG_2(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-+SWIGINTERN PyObject *_wrap_new_Session__SWIG_2(PyObject *self, PyObject *args) {
- PyObject *resultobj = 0;
- char *arg1 = (char *) 0 ;
- int res1 ;
-@@ -9327,7 +9329,7 @@
+@@ -9833,7 +9837,7 @@
}
arg1 = reinterpret_cast< char * >(buf1);
result = (PYTHON::Session *)new PYTHON::Session(arg1);
if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
return resultobj;
fail:
-@@ -9336,7 +9338,7 @@
- }
-
-
--SWIGINTERN PyObject *_wrap_new_Session__SWIG_3(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
-+SWIGINTERN PyObject *_wrap_new_Session__SWIG_3(PyObject *self, PyObject *args) {
- PyObject *resultobj = 0;
- switch_core_session_t *arg1 = (switch_core_session_t *) 0 ;
- void *argp1 = 0 ;
-@@ -9351,7 +9353,7 @@
+@@ -9856,7 +9860,7 @@
}
arg1 = reinterpret_cast< switch_core_session_t * >(argp1);
result = (PYTHON::Session *)new PYTHON::Session(arg1);
return resultobj;
fail:
return NULL;
-@@ -10492,6 +10492,7 @@ SWIGINTERN PyObject *_wrap_Session_setSelf(PyObject *SWIGUNUSEDPARM(self), PyObj
+@@ -10520,6 +10524,7 @@
SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Session_setSelf" "', argument " "1"" of type '" "PYTHON::Session *""'");
}
arg1 = reinterpret_cast< PYTHON::Session * >(argp1);
+ if (!arg1) SWIG_exception_fail(SWIG_ValueError, "in method '" "Session_setSelf" "', argument " "1"" is NULL");
- arg2 = obj1;
+ arg2 = swig_obj[1];
(arg1)->setSelf(arg2);
resultobj = SWIG_Py_Void();