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;
  
  
  

Reply via email to