- result.http_version=parse_version(parts[0]);
- result.status=static_cast<Status>(lexical_cast<unsigned>(parts[1]));
-
- unsigned start=lf+1;
- while(1)
- {
- lf=str.find('\n', start);
- if(lf==string::npos)
- throw InvalidParameterValue("Incomplete response");
- if(lf==start || (str[start]=='\r' && lf==start+1))
- break;
-
- unsigned colon=str.find(':', start);
- if(colon>lf)
- throw InvalidParameterValue("No colon in header");
-
- result.set_header(str.substr(start, colon-start), strip(str.substr(colon+1, lf-colon-1)));
+ result.http_version = parse_version(parts[0]);
+ result.status = static_cast<Status>(lexical_cast<unsigned>(parts[1]));