You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl-cvs@perl.apache.org by do...@hyperreal.org on 1998/09/20 00:27:45 UTC
cvs commit: modperl/t/internal error.t
dougm 98/09/19 15:27:45
Modified: . Changes Makefile.PL
src/modules/perl mod_perl.c mod_perl.h
t/internal error.t
Log:
USE_DSO=1 may be fixed on some platforms w/ current 1.3.2-dev
for those who are not, e.g. linux, can try a workaround by giving
PERL_DSO_UNLOAD to Makefile.PL or by setting the PERL_DSO_UNLOAD
environment variable
Revision Changes Path
1.150 +5 -0 modperl/Changes
Index: Changes
===================================================================
RCS file: /export/home/cvs/modperl/Changes,v
retrieving revision 1.149
retrieving revision 1.150
diff -u -r1.149 -r1.150
--- Changes 1998/09/19 18:18:35 1.149
+++ Changes 1998/09/19 22:27:42 1.150
@@ -8,6 +8,11 @@
=item 1.15_01-dev
+USE_DSO=1 may be fixed on some platforms w/ current 1.3.2-dev
+for those who are not, e.g. linux, can try a workaround by giving
+PERL_DSO_UNLOAD to Makefile.PL or by setting the PERL_DSO_UNLOAD
+environment variable
+
fix bug in Apache::Registry if $r->uri eq "/", thanks to Mike Wertheim
for the spot
1.98 +2 -1 modperl/Makefile.PL
Index: Makefile.PL
===================================================================
RCS file: /export/home/cvs/modperl/Makefile.PL,v
retrieving revision 1.97
retrieving revision 1.98
diff -u -r1.97 -r1.98
--- Makefile.PL 1998/09/19 15:57:16 1.97
+++ Makefile.PL 1998/09/19 22:27:42 1.98
@@ -180,6 +180,7 @@
$PERL_RUN_XS = 0;
my %experimental = map { $_,1 } qw{
+PERL_DSO_UNLOAD
PERL_STARTUP_DONE_CHECK
PERL_RUN_XS
PERL_GET_SET_HANDLERS
@@ -282,7 +283,7 @@
my %very_experimental = map {$_,1}
qw(PERL_DEFAULT_OPMASK PERL_SAFE_STARTUP PERL_ORALL_OPMASK
- PERL_STARTUP_DONE_CHECK);
+ PERL_STARTUP_DONE_CHECK PERL_DSO_UNLOAD);
if($EXPERIMENTAL) {
for (keys %experimental) {
1.49 +16 -1 modperl/src/modules/perl/mod_perl.c
Index: mod_perl.c
===================================================================
RCS file: /export/home/cvs/modperl/src/modules/perl/mod_perl.c,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -r1.48 -r1.49
--- mod_perl.c 1998/09/19 17:17:05 1.48
+++ mod_perl.c 1998/09/19 22:27:43 1.49
@@ -413,7 +413,22 @@
static void mp_dso_unload(void *data)
{
- perl_is_running = 0;
+ module *modp;
+
+ if(!PERL_DSO_UNLOAD)
+ return;
+
+ if(strEQ(top_module->name, "mod_perl.c"))
+ return;
+
+ for(modp = top_module; modp; modp = modp->next) {
+ if(modp->dynamic_load_handle) {
+ MP_TRACE_g(fprintf(stderr,
+ "mod_perl: cancel dlclose for %s\n",
+ modp->name));
+ modp->dynamic_load_handle = NULL;
+ }
+ }
}
void perl_startup (server_rec *s, pool *p)
1.51 +4 -0 modperl/src/modules/perl/mod_perl.h
Index: mod_perl.h
===================================================================
RCS file: /export/home/cvs/modperl/src/modules/perl/mod_perl.h,v
retrieving revision 1.50
retrieving revision 1.51
diff -u -r1.50 -r1.51
--- mod_perl.h 1998/09/18 21:05:28 1.50
+++ mod_perl.h 1998/09/19 22:27:43 1.51
@@ -388,6 +388,10 @@
#define PERL_STARTUP_DONE_CHECK getenv("PERL_STARTUP_DONE_CHECK")
#endif
+#ifndef PERL_DSO_UNLOAD
+#define PERL_DSO_UNLOAD getenv("PERL_DSO_UNLOAD")
+#endif
+
#ifdef APACHE_SSL
#define PERL_DONE_STARTUP 1
#else
1.4 +2 -1 modperl/t/internal/error.t
Index: error.t
===================================================================
RCS file: /export/home/cvs/modperl/t/internal/error.t,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- error.t 1998/06/03 15:53:23 1.3
+++ error.t 1998/09/19 22:27:44 1.4
@@ -1,7 +1,8 @@
use Apache::test;
#we're testing an experimental feature that doesn't work for some folks
#will revisit later
-unless (defined $ENV{USER} and $ENV{USER} eq 'dougm') {
+unless (defined $ENV{USER} and $ENV{USER} eq 'dougm'
+ and $net::callback_hooks{ERRSV_CAN_BE_HTTP}) {
print "1..1\nok 1\n";
exit;
}