pier        2002/06/13 04:06:48

  Modified:    webapp/apache-1.3 mod_webapp.c
               webapp/apache-2.0 mod_webapp.c
               webapp/include wa_request.h
               webapp/lib pr_info.c pr_warp.c wa_request.c
  Log:
  Fixed problem with disappearing HTTP response status code. Thanks to
  Stefan Norberg <[EMAIL PROTECTED]> for keeping up w/ me.
  
  Revision  Changes    Path
  1.35      +5 -11     jakarta-tomcat-connectors/webapp/apache-1.3/mod_webapp.c
  
  Index: mod_webapp.c
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-connectors/webapp/apache-1.3/mod_webapp.c,v
  retrieving revision 1.34
  retrieving revision 1.35
  diff -u -r1.34 -r1.35
  --- mod_webapp.c      10 May 2002 15:30:17 -0000      1.34
  +++ mod_webapp.c      13 Jun 2002 11:06:47 -0000      1.35
  @@ -292,20 +292,15 @@
   }
   
   /* Set the HTTP status of the response. */
  -void wam_handler_setstatus(wa_request *r, int status) {
  +void wam_handler_setstatus(wa_request *r, int status, char *message) {
       request_rec *req=(request_rec *)r->data;
   
  -    req->status=status;
  -}
  -/* Set the HTTP status of the response. */
  -void wam_handler_setstatusline(wa_request *r, char * status) {
  -    request_rec *req=(request_rec *)r->data;
  +    if ((message!=NULL) && (message[0]!='\0'))
  +        req->status_line=apr_psprintf(req->pool,"%03d %s", status, message);
   
  -    if (status !=NULL && status[0]!='\0')
  -        req->status_line=apr_pstrdup(req->pool,status);
  +    req->status=status;
   }
   
  -
   /* Set the MIME Content-Type of the response. */
   void wam_handler_setctype(wa_request *r, char *type) {
       request_rec *req=(request_rec *)r->data;
  @@ -382,7 +377,6 @@
   static wa_handler wam_handler = {
       wam_handler_log,
       wam_handler_setstatus,
  -    wam_handler_setstatusline,
       wam_handler_setctype,
       wam_handler_setheader,
       wam_handler_commit,
  
  
  
  1.11      +5 -12     jakarta-tomcat-connectors/webapp/apache-2.0/mod_webapp.c
  
  Index: mod_webapp.c
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-connectors/webapp/apache-2.0/mod_webapp.c,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- mod_webapp.c      10 May 2002 15:30:17 -0000      1.10
  +++ mod_webapp.c      13 Jun 2002 11:06:47 -0000      1.11
  @@ -294,21 +294,15 @@
   }
   
   /* Set the HTTP status of the response. */
  -static void wam_handler_setstatus(wa_request *r, int status) {
  +static void wam_handler_setstatus(wa_request *r, int status, char *message) {
       request_rec *req=(request_rec *)r->data;
   
  -    req->status=status;
  -}
  -
  -/* Set the HTTP status of the response. */
  -void wam_handler_setstatusline(wa_request *r, char * status) {
  -    request_rec *req=(request_rec *)r->data;
  +    if ((message!=NULL) && (message[0]!='\0'))
  +        req->status_line=apr_psprintf(req->pool,"%03d %s", status, message);
   
  -    if (status !=NULL && status[0]!='\0')
  -        req->status_line=apr_pstrdup(req->pool,status);
  +    req->status=status;
   }
   
  -
   /* Set the MIME Content-Type of the response. */
   static void wam_handler_setctype(wa_request *r, char *type) {
       request_rec *req=(request_rec *)r->data;
  @@ -390,7 +384,6 @@
   static wa_handler wam_handler = {
       wam_handler_log,
       wam_handler_setstatus,
  -    wam_handler_setstatusline,
       wam_handler_setctype,
       wam_handler_setheader,
       wam_handler_commit,
  
  
  
  1.12      +3 -5      jakarta-tomcat-connectors/webapp/include/wa_request.h
  
  Index: wa_request.h
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-connectors/webapp/include/wa_request.h,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- wa_request.h      10 May 2002 15:30:17 -0000      1.11
  +++ wa_request.h      13 Jun 2002 11:06:48 -0000      1.12
  @@ -94,8 +94,7 @@
    */
   struct wa_handler {
       void (*log)(wa_request *r, const char *file, const int line, char *msg);
  -    void (*setstatus)(wa_request *r, int status);
  -    void (*setstatusline)(wa_request *r, char *status);
  +    void (*setstatus)(wa_request *r, int status, char *message);
       void (*setctype)(wa_request *r, char *type);
       void (*setheader)(wa_request *r, char *name, char *value);
       void (*commit)(wa_request *r);
  @@ -188,8 +187,7 @@
   int wa_rinvoke(wa_request *r, wa_application *a);
   
   void wa_rlog(wa_request *r, const char *f, const int l, const char *fmt, ...);
  -void wa_rsetstatus(wa_request *r, int status);
  -void wa_rsetstatusline(wa_request *r, char *status);
  +void wa_rsetstatus(wa_request *r, int status, char *message);
   void wa_rsetctype(wa_request *r, char *type);
   void wa_rsetheader(wa_request *r, char *name, char *value);
   void wa_rcommit(wa_request *r);
  
  
  
  1.6       +2 -2      jakarta-tomcat-connectors/webapp/lib/pr_info.c
  
  Index: pr_info.c
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-connectors/webapp/lib/pr_info.c,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- pr_info.c 11 Feb 2002 08:56:48 -0000      1.5
  +++ pr_info.c 13 Jun 2002 11:06:48 -0000      1.6
  @@ -244,7 +244,7 @@
       wa_chain *conn=(wa_chain *)apr_palloc(r->pool,sizeof(wa_chain));
       wa_chain *elem=NULL;
   
  -    wa_rsetstatus(r,200);
  +    wa_rsetstatus(r,200,NULL);
       wa_rsetctype(r,"text/html");
       wa_rcommit(r);
   
  
  
  
  1.23      +2 -3      jakarta-tomcat-connectors/webapp/lib/pr_warp.c
  
  Index: pr_warp.c
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-connectors/webapp/lib/pr_warp.c,v
  retrieving revision 1.22
  retrieving revision 1.23
  diff -u -r1.22 -r1.23
  --- pr_warp.c 10 May 2002 15:30:17 -0000      1.22
  +++ pr_warp.c 13 Jun 2002 11:06:48 -0000      1.23
  @@ -403,8 +403,7 @@
                   p_read_ushort(pack,&status);
                   p_read_string(pack,&mesg);
                   wa_debug(WA_MARK,"=== %d %s",status,mesg);
  -                wa_rsetstatus(r,status);
  -                wa_rsetstatusline(r,mesg);
  +                wa_rsetstatus(r,status,mesg);
                   break;
               }
               case TYPE_RES_HEADER: {
  
  
  
  1.19      +4 -7      jakarta-tomcat-connectors/webapp/lib/wa_request.c
  
  Index: wa_request.c
  ===================================================================
  RCS file: /home/cvs/jakarta-tomcat-connectors/webapp/lib/wa_request.c,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- wa_request.c      10 May 2002 15:30:17 -0000      1.18
  +++ wa_request.c      13 Jun 2002 11:06:48 -0000      1.19
  @@ -144,7 +144,7 @@
   
       r->hand->log(r,WA_MARK,buf);
   
  -    wa_rsetstatus(r,s);
  +    wa_rsetstatus(r,s,NULL);
       wa_rsetctype(r,"text/html");
       wa_rcommit(r);
   
  @@ -218,11 +218,8 @@
       r->hand->log(r,f,l,buf);
   }
   
  -void wa_rsetstatus(wa_request *r, int status) {
  -    r->hand->setstatus(r,status);
  -}
  -void wa_rsetstatusline(wa_request *r, char *status) {
  -    r->hand->setstatusline(r,status);
  +void wa_rsetstatus(wa_request *r, int status, char *message) {
  +    r->hand->setstatus(r,status,message);
   }
   
   void wa_rsetctype(wa_request *r, char *type) {
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to