perl-modperl-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From s...@apache.org
Subject cvs commit: modperl-2.0/src/modules/perl modperl_io_apache.c
Date Thu, 06 Nov 2003 19:59:25 GMT
stas        2003/11/06 11:59:25

  Modified:    src/modules/perl modperl_io_apache.c
  Log:
  assertions are ugly as they cause a segfault without telling the end user
  what the problem is. Use a proper setting of $! if seeing an empty bucket
  brigade instead.
  
  Revision  Changes    Path
  1.12      +10 -1     modperl-2.0/src/modules/perl/modperl_io_apache.c
  
  Index: modperl_io_apache.c
  ===================================================================
  RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_io_apache.c,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -u -r1.11 -r1.12
  --- modperl_io_apache.c	6 Nov 2003 11:44:07 -0000	1.11
  +++ modperl_io_apache.c	6 Nov 2003 19:59:25 -0000	1.12
  @@ -294,7 +294,16 @@
            * handle APR_BLOCK_READ requests by returning data when
            * requested.
            */
  -        AP_DEBUG_ASSERT(!APR_BRIGADE_EMPTY(bb));
  +        if (APR_BRIGADE_EMPTY(bb)) {
  +            apr_brigade_destroy(bb);
  +            /* we can't tell which filter is broken, since others may
  +             * just pass data through */
  +            sv_setpv(ERRSV, "Aborting read from client. "
  +                     "One of the input filters is broken. "
  +                     "It returned an empty bucket brigade for "
  +                     "the APR_BLOCK_READ mode request");
  +            return -1;
  +        }
   
           if (APR_BUCKET_IS_EOS(APR_BRIGADE_LAST(bb))) {
               seen_eos = 1;
  
  
  

Mime
View raw message