I think the + if (in_merge) { + overlaps++; + continue; + } else { + new = (char **)apr_array_push(merged); + *new = apr_psprintf(r->pool, "%" APR_OFF_T_FMT "-%" APR_OFF_T_FMT, + ostart, oend); + idx = (indexes_t *)apr_array_push(indexes); + idx->start = ostart; + idx->end = oend; num_ranges++; - range++; + }
should be really + if (in_merge) { + overlaps++; + continue; + } else { + new = (char **)apr_array_push(merged); + *new = apr_psprintf(r->pool, "%" APR_OFF_T_FMT "-%" APR_OFF_T_FMT, + ostart, oend); + idx = (indexes_t *)apr_array_push(indexes); + idx->start = ostart; + idx->end = oend; + ostart = start; + oend = end; + in_merge = 1; num_ranges++; - range++; + } Otherwise I think 0-1,1000-1001 will result in 0-1 Regards Rüdiger > -----Original Message----- > From: Jim Jagielski [mailto:j...@jagunet.com] > Sent: Freitag, 26. August 2011 17:19 > To: dev@httpd.apache.org > Subject: Re: PoC ready > > Committed... r 1162131 >