-rw-r--r-- | noncore/net/ubrowser/httpcomm.cpp | 33 |
1 files changed, 26 insertions, 7 deletions
diff --git a/noncore/net/ubrowser/httpcomm.cpp b/noncore/net/ubrowser/httpcomm.cpp index b086b58..3c14053 100644 --- a/noncore/net/ubrowser/httpcomm.cpp +++ b/noncore/net/ubrowser/httpcomm.cpp @@ -152,2 +152,3 @@ void HttpComm::incoming() printf("HttpComm::Incoming: chunk length: %d\n", clength); + printf("HttpComm::Incoming: chunk length string: %s\n", sclength.latin1()); //end of data @@ -162,3 +163,3 @@ void HttpComm::incoming() { - status=1; + status=2; done=true; @@ -189,3 +190,3 @@ void HttpComm::incoming() status=0; - j=clength-bRead; + tempQString = tempQString.remove(0, clength); done=false; @@ -196,4 +197,13 @@ void HttpComm::incoming() { - body+=tempQString; - bRead+=tempQString.length(); + if(tempQString.length() <= ba) + { + body+=tempQString; + bRead+=tempQString.length(); + } + else + { + tempQString.truncate(ba); + body+=tempQString; + bRead+=tempQString.length(); + } printf("HttpComm::incoming: start new body piece 2: \n"); @@ -219,3 +229,3 @@ void HttpComm::incoming() status=0; - j=clength-bRead; + tempQString = tempQString.remove(0, clength); done=false; @@ -226,4 +236,13 @@ void HttpComm::incoming() { - body+=tempQString; - bRead+=tempQString.length(); + if(tempQString.length() <= ba) + { + body+=tempQString; + bRead+=tempQString.length(); + } + else + { + tempQString.truncate(ba); + body+=tempQString; + bRead+=tempQString.length(); + } printf("HttpComm::incoming: start new body piece 4: \n"); |