mirror of
https://github.com/signalwire/freeswitch.git
synced 2026-07-17 09:41:51 +00:00
109 lines
3.6 KiB
Diff
109 lines
3.6 KiB
Diff
--- mod_perl_wrap.cpp.old 2015-06-16 12:37:32.612000000 -0500
|
|
+++ mod_perl_wrap.cpp 2015-06-16 12:37:40.328000000 -0500
|
|
@@ -8710,13 +8710,18 @@
|
|
{
|
|
int argvi = 0;
|
|
PERL::Session *result = 0 ;
|
|
+ SV *foo;
|
|
dXSARGS;
|
|
|
|
if ((items < 0) || (items > 0)) {
|
|
SWIG_croak("Usage: new_Session();");
|
|
}
|
|
- result = (PERL::Session *)new PERL::Session();
|
|
- ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
|
|
+ result = (PERL::Session *)new PERL::Session();
|
|
+ result->setPERL(my_perl);
|
|
+ foo = sv_newmortal();
|
|
+ SWIG_MakePtr(foo, SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW);
|
|
+ result->setME(foo);
|
|
+ ST(argvi) = foo; argvi++ ;
|
|
XSRETURN(argvi);
|
|
fail:
|
|
SWIG_croak_null();
|
|
@@ -8735,6 +8740,7 @@
|
|
int res2 = 0 ;
|
|
int argvi = 0;
|
|
PERL::Session *result = 0 ;
|
|
+ SV *foo;
|
|
dXSARGS;
|
|
|
|
if ((items < 2) || (items > 2)) {
|
|
@@ -8751,7 +8757,16 @@
|
|
}
|
|
arg2 = reinterpret_cast< CoreSession * >(argp2);
|
|
result = (PERL::Session *)new PERL::Session(arg1,arg2);
|
|
- ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
|
|
+ if (result->allocated) {
|
|
+ result->setPERL(my_perl);
|
|
+ foo = get_sv(result->suuid, TRUE);
|
|
+ SWIG_MakePtr(foo, SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW);
|
|
+ result->setME(foo);
|
|
+ } else {
|
|
+ foo = sv_newmortal();
|
|
+ SWIG_MakePtr(foo, SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW);
|
|
+ }
|
|
+ ST(argvi) = foo; argvi++ ;
|
|
if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
|
|
|
|
XSRETURN(argvi);
|
|
@@ -8771,6 +8786,7 @@
|
|
int alloc1 = 0 ;
|
|
int argvi = 0;
|
|
PERL::Session *result = 0 ;
|
|
+ SV *foo;
|
|
dXSARGS;
|
|
|
|
if ((items < 1) || (items > 1)) {
|
|
@@ -8781,9 +8797,19 @@
|
|
SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_Session" "', argument " "1"" of type '" "char *""'");
|
|
}
|
|
arg1 = reinterpret_cast< char * >(buf1);
|
|
- result = (PERL::Session *)new PERL::Session(arg1);
|
|
- ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
|
|
+ result = (PERL::Session *)new PERL::Session(arg1);
|
|
+ if (result->allocated) {
|
|
+ result->setPERL(my_perl);
|
|
+ foo = get_sv(result->suuid, TRUE);
|
|
+ SWIG_MakePtr(foo, SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW);
|
|
+ result->setME(foo);
|
|
+ } else {
|
|
+ foo = sv_newmortal();
|
|
+ SWIG_MakePtr(foo, SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW);
|
|
+ }
|
|
+ ST(argvi) = foo; argvi++ ;
|
|
if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
|
|
+
|
|
XSRETURN(argvi);
|
|
fail:
|
|
if (alloc1 == SWIG_NEWOBJ) delete[] buf1;
|
|
@@ -8799,6 +8825,7 @@
|
|
int res1 = 0 ;
|
|
int argvi = 0;
|
|
PERL::Session *result = 0 ;
|
|
+ SV *foo;
|
|
dXSARGS;
|
|
|
|
if ((items < 1) || (items > 1)) {
|
|
@@ -8810,8 +8837,18 @@
|
|
}
|
|
arg1 = reinterpret_cast< switch_core_session_t * >(argp1);
|
|
result = (PERL::Session *)new PERL::Session(arg1);
|
|
- ST(argvi) = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW); argvi++ ;
|
|
-
|
|
+ if (result->allocated) {
|
|
+ result->setPERL(my_perl);
|
|
+ foo = get_sv(result->suuid, TRUE);
|
|
+ SWIG_MakePtr(foo, SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW);
|
|
+ result->setME(foo);
|
|
+ } else {
|
|
+ foo = sv_newmortal();
|
|
+ SWIG_MakePtr(foo, SWIG_as_voidptr(result), SWIGTYPE_p_PERL__Session, SWIG_OWNER | SWIG_SHADOW);
|
|
+ }
|
|
+
|
|
+ ST(argvi) = foo; argvi++ ;
|
|
+
|
|
XSRETURN(argvi);
|
|
fail:
|
|
|