Return-Path: Delivered-To: apmail-perl-modperl-cvs-archive@www.apache.org Received: (qmail 83403 invoked from network); 1 Jun 2004 20:17:12 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur-2.apache.org with SMTP; 1 Jun 2004 20:17:12 -0000 Received: (qmail 11884 invoked by uid 500); 1 Jun 2004 20:17:09 -0000 Delivered-To: apmail-perl-modperl-cvs-archive@perl.apache.org Received: (qmail 11827 invoked by uid 500); 1 Jun 2004 20:17:07 -0000 Mailing-List: contact modperl-cvs-help@perl.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: list-post: Reply-To: dev@perl.apache.org Delivered-To: mailing list modperl-cvs@perl.apache.org Received: (qmail 11801 invoked by uid 500); 1 Jun 2004 20:17:07 -0000 Delivered-To: apmail-modperl-2.0-cvs@apache.org Date: 1 Jun 2004 20:16:47 -0000 Message-ID: <20040601201647.83231.qmail@minotaur.apache.org> From: stas@apache.org To: modperl-2.0-cvs@apache.org Subject: cvs commit: modperl-2.0/src/modules/perl modperl_filter.c X-Virus-Checked: Checked X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N stas 2004/06/01 13:16:46 Modified: src/modules/perl modperl_filter.c Log: check the return status in input filter read ap_get_brigade and throw exception if failed Revision Changes Path 1.91 +7 -2 modperl-2.0/src/modules/perl/modperl_filter.c Index: modperl_filter.c =================================================================== RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_filter.c,v retrieving revision 1.90 retrieving revision 1.91 diff -u -u -r1.90 -r1.91 --- modperl_filter.c 19 May 2004 06:44:46 -0000 1.90 +++ modperl_filter.c 1 Jun 2004 20:16:46 -0000 1.91 @@ -692,11 +692,16 @@ apr_size_t len = 0; if (!filter->bb_in) { + apr_status_t rc; /* This should be read only once per handler invocation! */ filter->bb_in = apr_brigade_create(filter->pool, filter->f->c->bucket_alloc); - ap_get_brigade(filter->f->next, filter->bb_in, - filter->input_mode, filter->block, filter->readbytes); + rc = ap_get_brigade(filter->f->next, filter->bb_in, + filter->input_mode, filter->block, + filter->readbytes); + if (!(rc == APR_SUCCESS || rc == APR_EOF)) { + modperl_croak(aTHX_ rc, "Apache::Filter::read"); + } MP_TRACE_f(MP_FUNC, MP_FILTER_NAME_FORMAT "retrieving bb: 0x%lx\n", MP_FILTER_NAME(filter->f),