stas 2003/11/06 03:44:07
Modified: src/modules/perl modperl_io_apache.c Log: will need to deal with situations when get_brigade fetches more data than asked for Revision Changes Path 1.11 +10 -0 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.10 retrieving revision 1.11 diff -u -u -r1.10 -r1.11 --- modperl_io_apache.c 6 Nov 2003 11:35:08 -0000 1.10 +++ modperl_io_apache.c 6 Nov 2003 11:44:07 -0000 1.11 @@ -314,6 +314,16 @@ tmp += read; len -= read; + /* XXX: what happens if the downstream filter returns more + * data than the caller has asked for? We can't return more + * data that requested, so it needs to be stored somewhere and + * dealt with on the subsequent calls to this function. or may + * be we should just assert, blaming a bad filter. at the + * moment I couldn't find a spec telling whether it's wrong + * for the filter to return more data than it was asked for in + * the AP_MODE_READBYTES mode. + */ + apr_brigade_cleanup(bb); } while (len > 0 && !seen_eos);