why the following pseudo-code screws everything. I think it messes up 
the SP, but I cannot tell since I cannot run the debugger :( I guess I 
could test it outside of mod_perl env.

XS(XS_foo)
{
     dXSARGS;

     RETVAL = foo();

#line 310 "RequestUtil.c"
         ST(0) = RETVAL;
         sv_2mortal(ST(0));
     }
     XSRETURN(1);
}

SV *foo()
{
     dXSARGS;
     return &PL_sv_undef;
}

if I remove, dXSARGS; in foo() it works. Why? dXSARGS is just 4 other 
macros that set things. Or do they actually affect something? like the 
local() in Perl?

My point is that it's not easy to call the code that messes up with 
items and SP from C functions which are wrapped in XS wrapper.

So is it OK that I protory functions that use TABLE_GET_SET not to work 
with SP and items but instead be prototyped with object, key=NULL, 
val=NULL?

_____________________________________________________________________
Stas Bekman              JAm_pH     --   Just Another mod_perl Hacker
http://stason.org/       mod_perl Guide  http://perl.apache.org/guide
mailto:[EMAIL PROTECTED]   http://apachetoday.com http://eXtropia.com/
http://singlesheaven.com http://perl.apache.org http://perlmonth.com/



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to