dougm 00/10/03 13:59:02
Modified: Apache Apache.pm
src/modules/perl mod_perl.c
Log:
fixups for this change: fix bug where Apache::send_http_header was resetting
r->status = 200
Revision Changes Path
1.56 +4 -2 modperl/Apache/Apache.pm
Index: Apache.pm
===================================================================
RCS file: /home/cvs/modperl/Apache/Apache.pm,v
retrieving revision 1.55
retrieving revision 1.56
diff -u -r1.55 -r1.56
--- Apache.pm 2000/10/03 16:12:58 1.55
+++ Apache.pm 2000/10/03 20:58:58 1.56
@@ -184,8 +184,10 @@
else {
$not_sent = 1;
}
- $r->send_http_header if
- $not_sent and $r->status == 200;
+ if ($not_sent) {
+ $r->send_http_header;
+ $r->sent_header(-2);
+ }
$r->print($headers); #send rest of buffer, without stripping newlines!!!
last;
}
1.132 +3 -0 modperl/src/modules/perl/mod_perl.c
Index: mod_perl.c
===================================================================
RCS file: /home/cvs/modperl/src/modules/perl/mod_perl.c,v
retrieving revision 1.131
retrieving revision 1.132
diff -u -r1.131 -r1.132
--- mod_perl.c 2000/10/03 16:13:01 1.131
+++ mod_perl.c 2000/10/03 20:59:00 1.132
@@ -835,6 +835,9 @@
{
dPPDIR;
+ if (val == DONE) {
+ val = r->assbackwards = 1; /* so apache does not send another header */
+ }
if(val) MP_SENTHDR_on(cld);
val = MP_SENTHDR(cld) ? 1 : 0;
return MP_SENDHDR(cld) ? val : 1;