Am 12.05.2007 um 12:32 schrieb Maciej Stachowiak:


I can't check this in right now because the SVN server is temporarily out of disk, but this appears to mostly fix the Qt build, at least in QtLauncher. Rob Buis helped me test and is running layout tests now.

Hey,
so the Gdk port remains and I'm a bit lost and won't have time before monday. At least the Frame::init is the obvious change but I see a crash on the google site. It is reproducable by starting the GdkLauncher and clicking on any link. What confuses me is that in the below backtrace there is no way that FrameLoaderClientGdk can call setEncoding. I don't know the relation between ResourceLoader, FrameLoader, MainResourceLoader, DocumentLoader and ResourceHandleManager yet so I don't know who should call into the FrameLoaderClient and when.

From yesterday's research I saw that platform//network/gdk is rather incomplete, so it might be partly to blame. What I see is that directly from curl callback didReceiveData gets called and gets delivered up to the FrameLoader without ever calling into FrameLoaderClient or I forgot to set a breakpoint and missed a position where I can/should call setEncoding from.

What I will look into on Monday is:
        -Where and when is the document of the Frame gets destroyed
-What is the platform/network code omitting. I know of not handling HTTP response headers at all. -See if any unimplemented method of the FrameLoaderClientGdk gets called (Currently it looks like WebCore::FrameLoaderClientGdk::canCachePage() is the only one)



--- a/WebKitTools/GdkLauncher/main.cpp
+++ b/WebKitTools/GdkLauncher/main.cpp
@@ -213,6 +213,7 @@ int main(int argc, char* argv[])
     gFrame->setView(frameView);
     frameView->ScrollView::setDrawable(frameWindow->window);
+    gFrame->init();
     gFrame->loader()->load(ResourceRequest(url));
     gtk_main();
#if 0 // FIXME: this crashes at the moment. needs to provide DragClient





0xb7a6d598 in WebCore::FrameLoader::saveDocumentState (this=0x8199630) at ../../../WebCore/loader/FrameLoader.cpp:3755
3755        ASSERT(document);
(gdb) bt
#0 0xb7a6d598 in WebCore::FrameLoader::saveDocumentState (this=0x8199630) at ../../../WebCore/loader/FrameLoader.cpp:3755 #1 0xb7a7d283 in WebCore::FrameLoader::closeURL (this=0x8199630) at ../../../WebCore/loader/FrameLoader.cpp:627 #2 0xb7a7dea8 in WebCore::FrameLoader::transitionToCommitted (this=0x8199630, [EMAIL PROTECTED]) at ../../../WebCore/loader/ FrameLoader.cpp:2401 #3 0xb7a7ea50 in WebCore::FrameLoader::commitProvisionalLoad (this=0x8199630, [EMAIL PROTECTED]) at ../../../WebCore/ loader/FrameLoader.cpp:2359 #4 0xb7a64201 in WebCore::DocumentLoader::commitIfReady (this=0x8236e90) at ../../../WebCore/loader/DocumentLoader.cpp:305
#5  0xb7a64c6e in WebCore::DocumentLoader::commitLoad (this=0x8236e90,
data=0x824510b "<html><head><meta http-equiv=\"content-type\" content=\"text/html; charset=ISO-8859-1\"><title>Google</ title><style><!--\nbody,td,a,p,.h{font-family:arial,sans-serif}\n.h {font-size:20px}\n.h{color:#3366cc}\n."..., length=1255) at ../../../ WebCore/loader/DocumentLoader.cpp:345
#6  0xb7a64d2e in WebCore::DocumentLoader::receivedData (this=0x8236e90,
data=0x824510b "<html><head><meta http-equiv=\"content-type\" content=\"text/html; charset=ISO-8859-1\"><title>Google</ title><style><!--\nbody,td,a,p,.h{font-family:arial,sans-serif}\n.h {font-size:20px}\n.h{color:#3366cc}\n."..., length=1255) at ../../../ WebCore/loader/DocumentLoader.cpp:359
#7  0xb7a73117 in WebCore::FrameLoader::receivedData (this=0x8199630,
data=0x824510b "<html><head><meta http-equiv=\"content-type\" content=\"text/html; charset=ISO-8859-1\"><title>Google</ title><style><!--\nbody,td,a,p,.h{font-family:arial,sans-serif}\n.h {font-size:20px}\n.h{color:#3366cc}\n."..., length=1255) at ../../../ WebCore/loader/FrameLoader.cpp:2052
#8  0xb7a9ac24 in WebCore::MainResourceLoader::addData (this=0x822e9d0,
data=0x824510b "<html><head><meta http-equiv=\"content-type\" content=\"text/html; charset=ISO-8859-1\"><title>Google</ title><style><!--\nbody,td,a,p,.h{font-family:arial,sans-serif}\n.h {font-size:20px}\n.h{color:#3366cc}\n."..., length=1255, allAtOnce=false) at ../../../WebCore/loader/MainResourceLoader.cpp:136 #9 0xb7aa11d7 in WebCore::ResourceLoader::didReceiveData (this=0x822e9d0, data=0x824510b "<html><head><meta http-equiv=\"content-type\" content=\"text/html; charset=ISO-8859-1\"><title>Google</ title><style><!--\nbody,td,a,p,.h{font-family:arial,sans-serif}\n.h {font-size:20px}\n.h{color:#3366cc}\n."..., length=1255, lengthReceived=0, allAtOnce=false) at ../../../WebCore/loader/ ResourceLoader.cpp:208 #10 0xb7a9a99e in WebCore::MainResourceLoader::didReceiveData (this=0x822e9d0, data=0x824510b "<html><head><meta http-equiv=\"content-type\" content=\"text/html; charset=ISO-8859-1\"><title>Google</ title><style><!--\nbody,td,a,p,.h{font-family:arial,sans-serif}\n.h {font-size:20px}\n.h{color:#3366cc}\n."..., length=1255, lengthReceived=0, allAtOnce=false) at ../../../WebCore/loader/ MainResourceLoader.cpp:292 #11 0xb7aa0726 in WebCore::ResourceLoader::didReceiveData (this=0x822e9d0, data=0x824510b "<html><head><meta http-equiv=\"content-type\" content=\"text/html; charset=ISO-8859-1\"><title>Google</ title><style><!--\nbody,td,a,p,.h{font-family:arial,sans-serif}\n.h {font-size:20px}\n.h{color:#3366cc}\n."..., length=1255, lengthReceived=0) at ../../../WebCore/loader/ResourceLoader.cpp:330 #12 0xb7c3c0ba in writeCallback (ptr=0x8242dd2, size=1, nmemb=1248, obj=0x81c8500) at ../../../WebCore/platform/network/gdk/ ResourceHandleManager.cpp:77
_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-dev

Reply via email to