httpd-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From traw...@apache.org
Subject cvs commit: httpd-2.0/modules/generators mod_cgi.c
Date Thu, 31 Oct 2002 11:53:44 GMT
trawick     2002/10/31 03:53:44

  Modified:    .        CHANGES
               modules/generators mod_cgi.c
  Log:
  Terminate CGI scripts when the client connection drops.  This
  fix only applies to some normal paths in mod_cgi.  mod_cgid
  is still busted.
  
  A prereq for this fix is the change to content-length filter to
  notice c->aborted:
  
  http://cvs.apache.org/viewcvs.cgi/httpd-2.0/server/protoc
  ol.c.diff?r1=1.119&r2=1.120&diff_format=h
  
  PR:         8388
  
  Revision  Changes    Path
  1.967     +5 -1      httpd-2.0/CHANGES
  
  Index: CHANGES
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/CHANGES,v
  retrieving revision 1.966
  retrieving revision 1.967
  diff -u -r1.966 -r1.967
  --- CHANGES	30 Oct 2002 21:58:29 -0000	1.966
  +++ CHANGES	31 Oct 2002 11:53:43 -0000	1.967
  @@ -1,5 +1,9 @@
   Changes with Apache 2.0.44
  -  
  +
  +  *) Terminate CGI scripts when the client connection drops.  This
  +     fix only applies to some normal paths in mod_cgi.  mod_cgid
  +     is still busted.  PR 8388  [Jeff Trawick]
  +
     *) Fix a bug where 416 "Range not satisfiable" was being
        returned for content that should have been redirected.
        [Greg Ames]
  
  
  
  1.148     +11 -2     httpd-2.0/modules/generators/mod_cgi.c
  
  Index: mod_cgi.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/generators/mod_cgi.c,v
  retrieving revision 1.147
  retrieving revision 1.148
  diff -u -r1.147 -r1.148
  --- mod_cgi.c	30 Jul 2002 18:18:03 -0000	1.147
  +++ mod_cgi.c	31 Oct 2002 11:53:43 -0000	1.148
  @@ -785,9 +785,18 @@
               return HTTP_MOVED_TEMPORARILY;
           }
   
  -        ap_pass_brigade(r->output_filters, bb);
  +        rv = ap_pass_brigade(r->output_filters, bb);
  +
  +        /* don't soak up script output if errors occurred
  +         * writing it out...  otherwise, we prolong the
  +         * life of the script when the connection drops
  +         * or we stopped sending output for some other
  +         * reason
  +         */
  +        if (rv == APR_SUCCESS && !r->connection->aborted) {
  +            log_script_err(r, script_err);
  +        }
   
  -        log_script_err(r, script_err);
           apr_file_close(script_err);
       }
   
  
  
  

Mime
View raw message