Bojan Smojver wrote:
I'm seeing an endless loop in this part of the code:

------------------------------------------------
            do {
                apr_bucket *f = APR_BRIGADE_FIRST(in);
                APR_BUCKET_REMOVE(f);
                APR_BRIGADE_INSERT_TAIL(out, f);
            } while (e != APR_BRIGADE_FIRST(in));
------------------------------------------------
You might try using Apache2::DebugFilter to see what buckets are getting 
passed, but I think
the apreq filter is hooked before that.

Being that bucket brigades are doubly linked circular lists, and the code is checking it hasn't looped on the list (aka ring) yet, it must be missing it. Probably because it got removed from it (in). Maybe we need to save the first bucket of the list somewhere. and change the comparison.

Sadly I'm not that familiar with this portion of the code yet.


--
------------------------------------------------------------------------
Philip M. Gollucci ([EMAIL PROTECTED]) 323.219.4708
Consultant / http://p6m7g8.net/Resume/resume.shtml
Senior Software Engineer - TicketMaster - http://ticketmaster.com
1024D/A79997FA F357 0FDD 2301 6296 690F  6A47 D55A 7172 A799 97F

"It takes a minute to have a crush on someone, an hour to like someone,
and a day to love someone, but it takes a lifetime to forget someone..."

Reply via email to