Author: stas Date: Thu Dec 23 16:12:11 2004 New Revision: 123256 URL: http://svn.apache.org/viewcvs?view=rev&rev=123256 Log: move ModPerl::Util::exit() into mod_perl.so, since it needs to work, even if ModPerl::Util wasn't loaded
Modified: perl/modperl/trunk/Changes perl/modperl/trunk/src/modules/perl/modperl_perl.c perl/modperl/trunk/xs/ModPerl/Util/ModPerl__Util.h perl/modperl/trunk/xs/maps/modperl_functions.map Modified: perl/modperl/trunk/Changes Url: http://svn.apache.org/viewcvs/perl/modperl/trunk/Changes?view=diff&rev=123256&p1=perl/modperl/trunk/Changes&r1=123255&p2=perl/modperl/trunk/Changes&r2=123256 ============================================================================== --- perl/modperl/trunk/Changes (original) +++ perl/modperl/trunk/Changes Thu Dec 23 16:12:11 2004 @@ -12,6 +12,11 @@ =item 1.99_20-dev +move ModPerl::Util::exit() into mod_perl.so, since it needs to work, +even if ModPerl::Util wasn't loaded [Stas] + + + =item 1.99_19 - December 23, 2004 $r->hostname is now writable [Gozer] Modified: perl/modperl/trunk/src/modules/perl/modperl_perl.c Url: http://svn.apache.org/viewcvs/perl/modperl/trunk/src/modules/perl/modperl_perl.c?view=diff&rev=123256&p1=perl/modperl/trunk/src/modules/perl/modperl_perl.c&r1=123255&p2=perl/modperl/trunk/src/modules/perl/modperl_perl.c&r2=123256 ============================================================================== --- perl/modperl/trunk/src/modules/perl/modperl_perl.c (original) +++ perl/modperl/trunk/src/modules/perl/modperl_perl.c Thu Dec 23 16:12:11 2004 @@ -33,6 +33,24 @@ { NULL }, }; +XS(XS_ModPerl__Util_exit); /* prototype to pass -Wmissing-prototypes */ +XS(XS_ModPerl__Util_exit) +{ + dXSARGS; + int status; + if (items < 0 || items > 1) { + Perl_croak(aTHX_ "Usage: ModPerl::Util::exit(status=0)"); + } + if (items < 1) + status = 0; /* default: 0 */ + else { + status = (int)SvIV(ST(0)); + } + modperl_perl_exit(aTHX_ status); + + XSRETURN_EMPTY; +} + void modperl_perl_core_global_init(pTHX) { modperl_perl_core_global_t *cglobals = MP_perl_core_global_entries; @@ -43,6 +61,8 @@ GvIMPORTED_CV_on(gv); cglobals++; } + + newXS("ModPerl::Util::exit", XS_ModPerl__Util_exit, __FILE__); } static void modperl_perl_ids_get(modperl_perl_ids_t *ids) Modified: perl/modperl/trunk/xs/ModPerl/Util/ModPerl__Util.h Url: http://svn.apache.org/viewcvs/perl/modperl/trunk/xs/ModPerl/Util/ModPerl__Util.h?view=diff&rev=123256&p1=perl/modperl/trunk/xs/ModPerl/Util/ModPerl__Util.h&r1=123255&p2=perl/modperl/trunk/xs/ModPerl/Util/ModPerl__Util.h&r2=123256 ============================================================================== --- perl/modperl/trunk/xs/ModPerl/Util/ModPerl__Util.h (original) +++ perl/modperl/trunk/xs/ModPerl/Util/ModPerl__Util.h Thu Dec 23 16:12:11 2004 @@ -32,12 +32,10 @@ } } -#define mpxs_ModPerl__Util_exit(status) modperl_perl_exit(aTHX_ status) - #define mpxs_ModPerl__Util_current_callback \ modperl_callback_current_callback_get #define mpxs_ModPerl__Util_unload_package(pkg) \ modperl_package_unload(aTHX_ pkg) - +/* ModPerl::Util::exit lives in mod_perl.so, see modperl_perl.c */ Modified: perl/modperl/trunk/xs/maps/modperl_functions.map Url: http://svn.apache.org/viewcvs/perl/modperl/trunk/xs/maps/modperl_functions.map?view=diff&rev=123256&p1=perl/modperl/trunk/xs/maps/modperl_functions.map&r1=123255&p2=perl/modperl/trunk/xs/maps/modperl_functions.map&r2=123256 ============================================================================== --- perl/modperl/trunk/xs/maps/modperl_functions.map (original) +++ perl/modperl/trunk/xs/maps/modperl_functions.map Thu Dec 23 16:12:11 2004 @@ -6,7 +6,6 @@ MODULE=ModPerl::Util mpxs_ModPerl__Util_untaint | | ... SV *:DEFINE_current_perl_id - DEFINE_exit | | int:status=0 char *:DEFINE_current_callback DEFINE_unload_package | | const char *:package