On Mon, 29 Aug 2011, [email protected] wrote:
Author: jim
Date: Mon Aug 29 15:53:52 2011
New Revision: 1162881
URL: http://svn.apache.org/viewvc?rev=1162881&view=rev
Log:
Allow for actual counting...
Modified:
httpd/httpd/branches/2.2.x/modules/http/byterange_filter.c
Modified: httpd/httpd/branches/2.2.x/modules/http/byterange_filter.c
URL:
http://svn.apache.org/viewvc/httpd/httpd/branches/2.2.x/modules/http/byterange_filter.c?rev=1162881&r1=1162880&r2=1162881&view=diff
==============================================================================
--- httpd/httpd/branches/2.2.x/modules/http/byterange_filter.c (original)
+++ httpd/httpd/branches/2.2.x/modules/http/byterange_filter.c Mon Aug 29
15:53:52 2011
@@ -137,6 +137,7 @@ static apr_status_t copy_brigade_range(a
if (off_first != start64) {
rv = apr_bucket_split(copy, (apr_size_t)(start64 - off_first));
if (rv == APR_ENOTIMPL) {
+ int i;
rv = apr_bucket_read(copy, &s, &len, APR_BLOCK_READ);
if (rv != APR_SUCCESS) {
apr_brigade_cleanup(bbout);
@@ -147,9 +148,10 @@ static apr_status_t copy_brigade_range(a
* of shorter length. So read and delete until we reached
* the correct bucket for splitting.
*/
+ i = 0;
while (start64 - off_first > (apr_uint64_t)copy->length) {
apr_bucket *tmp;
- int i = 0;
+ /* don't allow inf. spin */
if (i++ >= 99999)
return APR_EINVAL;
IMNSHO such changes need to be voted upon before commiting to
branches/2.2.x. When can this case happen? And why do it for the start
bucket but not for the end bucket?