Sorry for the delay, I've been busy at work. If you have any questions,
though, feel free to ask. I'll try to respond within a reasonable
amount of time. ;-)
Berin
Matt Zimmerman wrote:
Could you send a unified diff showing exactly what you changed that fixed
the problem for you? I don't have a convenient way to test this, though I
can check for regressions if you give me a patch which works for you.
--- http.cc.orig Mon Jul 2 05:49:09 2001
+++ http.cc Wed Jul 2 21:51:56 2003
@@ -200,16 +200,16 @@
// We cheat and assume it is unneeded to have more than one buffer load
for (unsigned long I = OutP; I < InP; I++)
{
- if (Buf[I%Size] != '\n')
- continue;
- for (I++; I < InP && Buf[I%Size] == '\r'; I++);
-
+ if (Buf[I%Size] != '\n') continue;
+ if (I == OutP) continue;
+ if (Buf[(I - 1)%Size] != '\r') continue;
if (Single == false)
{
- if (Buf[I%Size] != '\n')
- continue;
- for (I++; I < InP && Buf[I%Size] == '\r'; I++);
+ if (I < (OutP + 3)) continue;
+ if ((Buf[(I - 2)%Size] != '\n') || (Buf[(I - 3)%Size] != '\r'))
continue;
}
+ I++;
+
if (I > InP)
I = InP;