stas 2003/02/03 14:56:19 Modified: . Changes src/modules/perl mod_perl.c t/conf extra.conf.in modperl_extra.pl todo missing_old_features.txt Log: add PerlChildExitHandler implementation Revision Changes Path 1.120 +2 -0 modperl-2.0/Changes Index: Changes =================================================================== RCS file: /home/cvs/modperl-2.0/Changes,v retrieving revision 1.119 retrieving revision 1.120 diff -u -r1.119 -r1.120 --- Changes 3 Feb 2003 06:40:33 -0000 1.119 +++ Changes 3 Feb 2003 22:56:19 -0000 1.120 @@ -10,6 +10,8 @@ =item 1.99_09-dev +add PerlChildExitHandler implementation [Stas] + add PerlCleanupHandler implementation + test [Stas] Apache::Test now can run 'make test' under 'root', without permission 1.150 +5 -2 modperl-2.0/src/modules/perl/mod_perl.c Index: mod_perl.c =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/mod_perl.c,v retrieving revision 1.149 retrieving revision 1.150 diff -u -r1.149 -r1.150 --- mod_perl.c 23 Jan 2003 04:26:53 -0000 1.149 +++ mod_perl.c 3 Feb 2003 22:56:19 -0000 1.150 @@ -541,7 +541,10 @@ static apr_status_t modperl_child_exit(void *data) { char *level = NULL; - + server_rec *s = (server_rec *)data; + + modperl_callback_process(MP_CHILD_EXIT_HANDLER, server_pool, s); + if ((level = getenv("PERL_DESTRUCT_LEVEL"))) { modperl_destruct_level = atoi(level); } @@ -563,7 +566,7 @@ { modperl_perl_init_ids_server(s); - apr_pool_cleanup_register(p, NULL, modperl_child_exit, + apr_pool_cleanup_register(p, (void *)s, modperl_child_exit, apr_pool_cleanup_null); } 1.6 +2 -0 modperl-2.0/t/conf/extra.conf.in Index: extra.conf.in =================================================================== RCS file: /home/cvs/modperl-2.0/t/conf/extra.conf.in,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- extra.conf.in 24 Nov 2002 12:50:31 -0000 1.5 +++ extra.conf.in 3 Feb 2003 22:56:19 -0000 1.6 @@ -1,6 +1,8 @@ # make sure that we test under Taint mode PerlSwitches -T +PerlChildExitHandler ModPerl::Test::exit_handler + #for t/modules/include.t <Directory @ServerRoot@/htdocs/includes> AddOutputFilter INCLUDES .shtml 1.23 +6 -0 modperl-2.0/t/conf/modperl_extra.pl Index: modperl_extra.pl =================================================================== RCS file: /home/cvs/modperl-2.0/t/conf/modperl_extra.pl,v retrieving revision 1.22 retrieving revision 1.23 diff -u -r1.22 -r1.23 --- modperl_extra.pl 15 Jan 2003 04:54:42 -0000 1.22 +++ modperl_extra.pl 3 Feb 2003 22:56:19 -0000 1.23 @@ -76,6 +76,12 @@ Apache::OK; } +sub ModPerl::Test::exit_handler { + my($p, $s) = @_; + + $s->log->info("Child process pid=$$ is exiting"); +} + END { warn "END in modperl_extra.pl, pid=$$\n"; } 1.25 +0 -2 modperl-2.0/todo/missing_old_features.txt Index: missing_old_features.txt =================================================================== RCS file: /home/cvs/modperl-2.0/todo/missing_old_features.txt,v retrieving revision 1.24 retrieving revision 1.25 diff -u -r1.24 -r1.25 --- missing_old_features.txt 28 Jan 2003 07:33:14 -0000 1.24 +++ missing_old_features.txt 3 Feb 2003 22:56:19 -0000 1.25 @@ -5,8 +5,6 @@ - anonymous handler (for push_handlers, add_input_filter, etc), see modperl_mgv.c: modperl_mgv_name_from_sv -- PerlCleanupHandler - - PerlModule, PerlRequire, Perl{Set,Add}Var in .htaccess is missing - modperl_include #perl