var size = ReadLine();\r
if (size.Length < 3)\r
break;\r
+ var ext = size.IndexOf(';');\r
+ size = ext == -1 ? size.Substring(0, size.Length - 2) : size.Substring(0, ext);\r
int val;\r
- if (!int.TryParse(size.Substring(0, size.Length - 2),\r
- NumberStyles.AllowHexSpecifier, CultureInfo.InvariantCulture, out val))\r
- break;\r
+ if (!int.TryParse(size, NumberStyles.HexNumber, CultureInfo.InvariantCulture, out val))\r
+ throw new HttpProxyAbort("Can't parse chunk size: " + size);\r
if (val == 0)\r
{\r
ReadLine();\r
buf.Write(chunk, 0, chunk.Length);\r
ReadLine();\r
}\r
+ string line;\r
+ do\r
+ {\r
+ line = ReadLine();\r
+ } while (line != "" && line != "\r\n");\r
return buf.ToArray();\r
}\r
\r