On Jun 24, 2011 8:45 AM, "Stefan Sperling" <s...@elego.de> wrote: > > Trying to update my working copy I observed svn spinning on the CPU > forever. Attaching with gdb showed that it was stuck in an endless > loop inside svn_ra_serf__handle_xml_parser(). > > Below is the code. The problem was that serf_bucket_read() returned > zero bytes but also indicated success. If that happens the loop never > terminates.
When you say "success", you mean status==0? > > I suppose this code was written with the assumption that reading > from the socket would always block until data is available? > This does not seem to happen in my case. Maybe serf is doing something > wrong when it opens the socket? No, it would never block. The bucket should return EAGAIN when it has no more data. >... I'll investigate... Cheers, -g