author | spiralman <spiralman> | 2002-07-22 22:37:22 (UTC) |
---|---|---|
committer | spiralman <spiralman> | 2002-07-22 22:37:22 (UTC) |
commit | c19b6cccd243107eb774c5e0bdb269265f3b5abe (patch) (side-by-side diff) | |
tree | 9c888fb5a6a09d102df3143b9458465c11e7380a | |
parent | 0433711d6f7190073c476a2f771dfce879ef87e5 (diff) | |
download | opie-c19b6cccd243107eb774c5e0bdb269265f3b5abe.zip opie-c19b6cccd243107eb774c5e0bdb269265f3b5abe.tar.gz opie-c19b6cccd243107eb774c5e0bdb269265f3b5abe.tar.bz2 |
fixed some bugs with chunked transfer encoding, still doesnt work though
-rw-r--r-- | noncore/net/ubrowser/Makefile | 20 | ||||
-rw-r--r-- | noncore/net/ubrowser/Makefile.in | 18 | ||||
-rw-r--r-- | noncore/net/ubrowser/httpcomm.cpp | 49 |
3 files changed, 63 insertions, 24 deletions
diff --git a/noncore/net/ubrowser/Makefile b/noncore/net/ubrowser/Makefile index 4d92441..69aaf20 100644 --- a/noncore/net/ubrowser/Makefile +++ b/noncore/net/ubrowser/Makefile @@ -1,4 +1,4 @@ ############################################################################# -# Automatically generated from noncore/ubrowser/Makefile.in +# Automatically generated from noncore/net/ubrowser/Makefile.in # Build options from ############################################################################# @@ -106,5 +106,5 @@ CXXFLAGS= $(SYSCONF_CXXFLAGS_QT) $(SYSCONF_CXXFLAGS) CC = $(SYSCONF_CC) $(QT_C_MT) CFLAGS = $(SYSCONF_CFLAGS) -INCPATH = -I$(OPIEDIR)/include +INCPATH = -I../../../include LFLAGS = $(SYSCONF_LFLAGS_QT) $(SYSCONF_RPATH_QT) $(SYSCONF_LFLAGS) $(QT_LFLAGS_MT) LIBS = $(SUBLIBS) -lqpe $(SYSCONF_LIBS_QT) $(SYSCONF_LIBS) $(SYSCONF_LIBS_QTAPP) @@ -114,5 +114,5 @@ UIC = $(SYSCONF_UIC) ####### Target -DESTDIR = $(OPIEDIR)/bin/ +DESTDIR = ../../../bin/ VER_MAJ = 1 VER_MIN = 0 @@ -207,8 +207,8 @@ REQUIRES= main.o: main.cpp \ - $(OPIEDIR)/include/qpe/qpeapplication.h \ + ../../../include/qpe/qpeapplication.h \ mainview.h \ - $(OPIEDIR)/include/qpe/resource.h \ - $(OPIEDIR)/include/qpe/qpetoolbar.h \ + ../../../include/qpe/resource.h \ + ../../../include/qpe/qpetoolbar.h \ httpfactory.h \ httpcomm.h @@ -216,6 +216,6 @@ main.o: main.cpp \ mainview.o: mainview.cpp \ mainview.h \ - $(OPIEDIR)/include/qpe/resource.h \ - $(OPIEDIR)/include/qpe/qpetoolbar.h \ + ../../../include/qpe/resource.h \ + ../../../include/qpe/qpetoolbar.h \ httpfactory.h \ httpcomm.h @@ -230,6 +230,6 @@ httpcomm.o: httpcomm.cpp \ moc_mainview.o: moc_mainview.cpp \ mainview.h \ - $(OPIEDIR)/include/qpe/resource.h \ - $(OPIEDIR)/include/qpe/qpetoolbar.h \ + ../../../include/qpe/resource.h \ + ../../../include/qpe/qpetoolbar.h \ httpfactory.h \ httpcomm.h diff --git a/noncore/net/ubrowser/Makefile.in b/noncore/net/ubrowser/Makefile.in index 010f16f..43b5111 100644 --- a/noncore/net/ubrowser/Makefile.in +++ b/noncore/net/ubrowser/Makefile.in @@ -7,5 +7,5 @@ CXXFLAGS= $(SYSCONF_CXXFLAGS_QT) $(SYSCONF_CXXFLAGS) CC = $(SYSCONF_CC) $(QT_C_MT) CFLAGS = $(SYSCONF_CFLAGS) -INCPATH = -I$(OPIEDIR)/include +INCPATH = -I../../../include LFLAGS = $(SYSCONF_LFLAGS_QT) $(SYSCONF_RPATH_QT) $(SYSCONF_LFLAGS) $(QT_LFLAGS_MT) LIBS = $(SUBLIBS) -lqpe $(SYSCONF_LIBS_QT) $(SYSCONF_LIBS) $(SYSCONF_LIBS_QTAPP) @@ -15,5 +15,5 @@ UIC = $(SYSCONF_UIC) ####### Target -DESTDIR = $(OPIEDIR)/bin/ +DESTDIR = ../../../bin/ VER_MAJ = 1 VER_MIN = 0 @@ -108,8 +108,8 @@ REQUIRES= main.o: main.cpp \ - $(OPIEDIR)/include/qpe/qpeapplication.h \ + ../../../include/qpe/qpeapplication.h \ mainview.h \ - $(OPIEDIR)/include/qpe/resource.h \ - $(OPIEDIR)/include/qpe/qpetoolbar.h \ + ../../../include/qpe/resource.h \ + ../../../include/qpe/qpetoolbar.h \ httpfactory.h \ httpcomm.h @@ -117,6 +117,6 @@ main.o: main.cpp \ mainview.o: mainview.cpp \ mainview.h \ - $(OPIEDIR)/include/qpe/resource.h \ - $(OPIEDIR)/include/qpe/qpetoolbar.h \ + ../../../include/qpe/resource.h \ + ../../../include/qpe/qpetoolbar.h \ httpfactory.h \ httpcomm.h @@ -131,6 +131,6 @@ httpcomm.o: httpcomm.cpp \ moc_mainview.o: moc_mainview.cpp \ mainview.h \ - $(OPIEDIR)/include/qpe/resource.h \ - $(OPIEDIR)/include/qpe/qpetoolbar.h \ + ../../../include/qpe/resource.h \ + ../../../include/qpe/qpetoolbar.h \ httpfactory.h \ httpcomm.h diff --git a/noncore/net/ubrowser/httpcomm.cpp b/noncore/net/ubrowser/httpcomm.cpp index 51068db..54f7acf 100644 --- a/noncore/net/ubrowser/httpcomm.cpp +++ b/noncore/net/ubrowser/httpcomm.cpp @@ -137,5 +137,6 @@ void HttpComm::incoming() if(j != 0) { - tempQString.remove(0, j); + tempQString.remove(0, j+1); + printf("HttpComm::incoming: removing http header. Result: \n%s", tempQString.latin1()); } while(!done) @@ -150,4 +151,5 @@ void HttpComm::incoming() clength = sclength.toUInt(0, 16); printf("HttpComm::Incoming: chunk length: %d\n", clength); + //end of data if(clength==0) { @@ -155,16 +157,20 @@ void HttpComm::incoming() done=true; } + //still more, but it hasnt been recieved yet if(ba <= j) { status=1; done=true; -// break; + break; } + //still more data waiting else { done=false; + //remove the chunk length header + tempQString.remove(0,j+1); } bRead=0; - break; +// break; //if there is more fall through to: //chunk length just read, still more in tempQstring @@ -175,4 +181,5 @@ void HttpComm::incoming() QString newTQstring = tempQString; newTQstring.truncate(clength-bRead); + bRead+=newTQstring.length(); body+=newTQstring; printf("HttpComm::incoming: start new body piece 1: \n"); @@ -182,5 +189,5 @@ void HttpComm::incoming() j=clength-bRead; done=false; - break; +// break; } //the chunk extends beyond the current data; @@ -193,8 +200,40 @@ void HttpComm::incoming() printf("HttpComm::incoming: end new body piece 2.\n"); done=true; - break; + status=2; +// break; + } + break; + //just got data in, continue reading chunk + case 2: + //the current data extends beyond the end of the chunk + if(bRead + tempQString.length() > clength) + { + QString newTQstring = tempQString; + newTQstring.truncate(clength-bRead); + bRead+=newTQstring.length(); + body+=newTQstring; + printf("HttpComm::incoming: start new body piece 3: \n"); + printf("%s", newTQstring.latin1() ); + printf("HttpComm::incoming: end new body piece 3.\n"); + status=0; + j=clength-bRead; + done=false; +// break; + } + //the chunk extends beyond the current data; + else + { + body+=tempQString; + bRead+=ba; + printf("HttpComm::incoming: start new body piece 4: \n"); + printf("%s", tempQString.latin1() ); + printf("HttpComm::incoming: end new body piece 4.\n"); + done=true; + status=2; +// break; } break; } + printf("HttpComm::incoming: chunked encoding: bRead: %d\n", bRead); } } |