Loading src/http.cpp +12 −4 Changes for src/http.cpp: 12 added lines, 4 removed lines. Original line number Diff line number Diff line Loading @@ -306,7 +306,7 @@ size_t libhttppp::HttpResponse::parse(const char *data,size_t inlen){ throw excep[HTTPException::Error] << "HttpResponse header too small aborting!"; } int v=5; size_t v=5; if(memcmp(data,"HTTP/",5)==0){ while(v<inlen){ Loading @@ -314,11 +314,14 @@ size_t libhttppp::HttpResponse::parse(const char *data,size_t inlen){ break; ++v; } }else{ HTTPException excep; throw excep[HTTPException::Error] << "HttpResponse no Version Tag found !"; } std::copy(data,data+v,std::begin(_Version)); size_t ve=v; size_t ve=++v; while(ve<inlen){ if(data[ve]=='\r' || data[ve]=='\n') Loading @@ -326,6 +329,8 @@ size_t libhttppp::HttpResponse::parse(const char *data,size_t inlen){ ++ve; }; --ve; std::copy(data+v,data+ve,std::begin(_State)); while(ve<inlen){ Loading @@ -339,8 +344,11 @@ size_t libhttppp::HttpResponse::parse(const char *data,size_t inlen){ if(delimeter==0 && data[pos]==':'){ delimeter=pos; } if( (data[pos]=='\r' && data[pos+2]=='\r') || (data[pos]!='\n' && data[pos+1]=='\n') ){ if( (data[pos]=='\r' && data[pos+2]=='\r') ){ pos+=2; break; }else if((data[pos]=='\n' && data[pos+1]=='\n')){ ++pos; break; } if(data[pos]=='\r' || (data[pos-1]!='\r' && data[pos]=='\n') ){ Loading Loading
src/http.cpp +12 −4 Changes for src/http.cpp: 12 added lines, 4 removed lines. Original line number Diff line number Diff line Loading @@ -306,7 +306,7 @@ size_t libhttppp::HttpResponse::parse(const char *data,size_t inlen){ throw excep[HTTPException::Error] << "HttpResponse header too small aborting!"; } int v=5; size_t v=5; if(memcmp(data,"HTTP/",5)==0){ while(v<inlen){ Loading @@ -314,11 +314,14 @@ size_t libhttppp::HttpResponse::parse(const char *data,size_t inlen){ break; ++v; } }else{ HTTPException excep; throw excep[HTTPException::Error] << "HttpResponse no Version Tag found !"; } std::copy(data,data+v,std::begin(_Version)); size_t ve=v; size_t ve=++v; while(ve<inlen){ if(data[ve]=='\r' || data[ve]=='\n') Loading @@ -326,6 +329,8 @@ size_t libhttppp::HttpResponse::parse(const char *data,size_t inlen){ ++ve; }; --ve; std::copy(data+v,data+ve,std::begin(_State)); while(ve<inlen){ Loading @@ -339,8 +344,11 @@ size_t libhttppp::HttpResponse::parse(const char *data,size_t inlen){ if(delimeter==0 && data[pos]==':'){ delimeter=pos; } if( (data[pos]=='\r' && data[pos+2]=='\r') || (data[pos]!='\n' && data[pos+1]=='\n') ){ if( (data[pos]=='\r' && data[pos+2]=='\r') ){ pos+=2; break; }else if((data[pos]=='\n' && data[pos+1]=='\n')){ ++pos; break; } if(data[pos]=='\r' || (data[pos-1]!='\r' && data[pos]=='\n') ){ Loading