Author: stas Date: Fri Dec 10 20:00:36 2004 New Revision: 111572 URL: http://svn.apache.org/viewcvs?view=rev&rev=111572 Log: new function ModPerl::Util::current_perl_id() which returns something like (.e.g 0x92ac760) (aTHX) under threaded mpm and 0 under non-threaded perl (0x0). Useful for debugging modperl under threaded perls.
Added: perl/modperl/trunk/t/response/TestModperl/util.pm Modified: perl/modperl/trunk/Changes 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=111572&p1=perl/modperl/trunk/Changes&r1=111571&p2=perl/modperl/trunk/Changes&r2=111572 ============================================================================== --- perl/modperl/trunk/Changes (original) +++ perl/modperl/trunk/Changes Fri Dec 10 20:00:36 2004 @@ -12,6 +12,11 @@ =item 1.99_18-dev +new function ModPerl::Util::current_perl_id() which returns something +like (.e.g 0x92ac760) (aTHX) under threaded mpm and 0 under +non-threaded perl (0x0). Useful for debugging modperl under threaded +perls. [Stas] + make sure that modperl's internal post_config callback, which amongst other things, cloning perl interpreters is running as modperl_hook_post_config_last APR_HOOK_REALLY_LAST, which ensures that Added: perl/modperl/trunk/t/response/TestModperl/util.pm Url: http://svn.apache.org/viewcvs/perl/modperl/trunk/t/response/TestModperl/util.pm?view=auto&rev=111572 ============================================================================== --- (empty file) +++ perl/modperl/trunk/t/response/TestModperl/util.pm Fri Dec 10 20:00:36 2004 @@ -0,0 +1,28 @@ +package TestModperl::util; + +# Modperl::Util tests + +use strict; +use warnings FATAL => 'all'; + +use Apache::Test; +use Apache::TestUtil; + +use Apache::RequestIO (); +use Apache::RequestUtil (); + +use Apache::Const -compile => 'OK'; + +sub handler { + my $r = shift; + + plan $r, tests => 1; + + ok t_cmp ModPerl::Util::current_perl_id(), qr/0x\d+/, + "perl interpreter id"; + + Apache::OK; +} + +1; +__END__ 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=111572&p1=perl/modperl/trunk/xs/ModPerl/Util/ModPerl__Util.h&r1=111571&p2=perl/modperl/trunk/xs/ModPerl/Util/ModPerl__Util.h&r2=111572 ============================================================================== --- perl/modperl/trunk/xs/ModPerl/Util/ModPerl__Util.h (original) +++ perl/modperl/trunk/xs/ModPerl/Util/ModPerl__Util.h Fri Dec 10 20:00:36 2004 @@ -13,6 +13,14 @@ * limitations under the License. */ +#ifdef USE_ITHREADS +#define mpxs_ModPerl__Util_current_perl_id() \ + newSVpvf("0x%lx", (unsigned long)aTHX) +#else +#define mpxs_ModPerl__Util_current_perl_id() \ + newSVpvf("0x%lx", 0) +#endif + static MP_INLINE void mpxs_ModPerl__Util_untaint(pTHX_ I32 items, SV **MARK, SV **SP) { 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=111572&p1=perl/modperl/trunk/xs/maps/modperl_functions.map&r1=111571&p2=perl/modperl/trunk/xs/maps/modperl_functions.map&r2=111572 ============================================================================== --- perl/modperl/trunk/xs/maps/modperl_functions.map (original) +++ perl/modperl/trunk/xs/maps/modperl_functions.map Fri Dec 10 20:00:36 2004 @@ -5,6 +5,7 @@ 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