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 1999/05/19 03:04:22 UTC
cvs commit: modperl/t/conf httpd.conf-dist
dougm 99/05/18 18:04:21
Modified: . Changes
src/modules/perl perl_util.c
t/conf httpd.conf-dist
Log:
rework PerlFreshRestart to avoid core dump triggered w/ 5.005_03
Revision Changes Path
1.293 +2 -0 modperl/Changes
Index: Changes
===================================================================
RCS file: /export/home/cvs/modperl/Changes,v
retrieving revision 1.292
retrieving revision 1.293
diff -u -r1.292 -r1.293
--- Changes 1999/05/18 22:07:55 1.292
+++ Changes 1999/05/19 01:03:57 1.293
@@ -8,6 +8,8 @@
=item 1.19_01-dev
+rework PerlFreshRestart to avoid core dump triggered w/ 5.005_03
+
fix $Apache::Server::Starting under dso
use ap_bfileno() instead of r->connnection->client->fd directly
1.29 +11 -16 modperl/src/modules/perl/perl_util.c
Index: perl_util.c
===================================================================
RCS file: /export/home/cvs/modperl/src/modules/perl/perl_util.c,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- perl_util.c 1999/05/18 01:45:00 1.28
+++ perl_util.c 1999/05/19 01:04:13 1.29
@@ -464,25 +464,20 @@
void perl_reload_inc(void)
{
- SV *val;
- char *key;
- I32 klen;
- HV *orig_inc = GvHV(incgv);
-
- ENTER;
-
- save_hptr(&GvHV(incgv));
- GvHV(incgv) = Nullhv;
- SAVEI32(dowarn);
+ HV *hash = GvHV(incgv);
+ HE *entry;
+ I32 old_warn = dowarn;
+
dowarn = FALSE;
-
- (void)hv_iterinit(orig_inc);
- while((val = hv_iternextsv(orig_inc, &key, &klen))) {
+ hv_iterinit(hash);
+ while ((entry = hv_iternext(hash))) {
+ char *key = HeKEY(entry);
+ SvREFCNT_dec(HeVAL(entry));
+ HeVAL(entry) = &sv_undef;
+ MP_TRACE_g(fprintf(stderr, "reloading %s\n", key);)
perl_require_pv(key);
- MP_TRACE_g(fprintf(stderr, "reloading %s\n", key));
}
-
- LEAVE;
+ dowarn = old_warn;
}
I32 perl_module_is_loaded(char *name)
1.24 +1 -0 modperl/t/conf/httpd.conf-dist
Index: httpd.conf-dist
===================================================================
RCS file: /export/home/cvs/modperl/t/conf/httpd.conf-dist,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -r1.23 -r1.24
--- httpd.conf-dist 1999/03/26 20:23:03 1.23
+++ httpd.conf-dist 1999/05/19 01:04:18 1.24
@@ -15,6 +15,7 @@
#-Tw
PerlTaintCheck On
PerlWarn On
+ PerlFreshRestart On
=back to pod