[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

pfeldman at chromium.org pfeldman at chromium.org
Wed Dec 22 13:30:19 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 6a04c9ede2c13361daad8782060f34ce19f57bc0
Author: pfeldman at chromium.org <pfeldman at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Fri Sep 17 16:02:25 2010 +0000

    2010-09-17  Pavel Feldman  <pfeldman at chromium.org>
    
            Reviewed by Yury Semikhatsky.
    
            Web Inspector: FrameLoader::loadedResourceFromMemoryCache reports
            resource as not cached to InspectorController.
            https://bugs.webkit.org/show_bug.cgi?id=45961
    
            There is one path in control flow that leads to resources being
            reported as not cached. Patch to follow.
    
            * inspector/InspectorController.cpp:
            (WebCore::InspectorController::markResourceAsCached):
            * inspector/InspectorController.h:
            * inspector/InspectorResource.cpp:
            (WebCore::InspectorResource::markAsCached):
            (WebCore::InspectorResource::updateResponse):
            * inspector/InspectorResource.h:
            * loader/FrameLoader.cpp:
            (WebCore::FrameLoader::loadedResourceFromMemoryCache):
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@67709 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 181ff2a..9ce8b16 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,26 @@
+2010-09-17  Pavel Feldman  <pfeldman at chromium.org>
+
+        Reviewed by Yury Semikhatsky.
+
+        Web Inspector: FrameLoader::loadedResourceFromMemoryCache reports
+        resource as not cached to InspectorController.
+        https://bugs.webkit.org/show_bug.cgi?id=45961
+
+        Web Inspector: FrameLoader::loadedResourceFromMemoryCache reports
+        resource as not cached to InspectorController.
+        There is one path in control flow that leads to resources being
+        reported as not cached. Patch to follow.
+
+        * inspector/InspectorController.cpp:
+        (WebCore::InspectorController::markResourceAsCached):
+        * inspector/InspectorController.h:
+        * inspector/InspectorResource.cpp:
+        (WebCore::InspectorResource::markAsCached):
+        (WebCore::InspectorResource::updateResponse):
+        * inspector/InspectorResource.h:
+        * loader/FrameLoader.cpp:
+        (WebCore::FrameLoader::loadedResourceFromMemoryCache):
+
 2010-09-17  Alexander Pavlov  <apavlov at chromium.org>
 
         Unreviewed, build fix. Add files missed in the previous commit.
diff --git a/WebCore/inspector/InspectorController.cpp b/WebCore/inspector/InspectorController.cpp
index 070f34b..73126d7 100644
--- a/WebCore/inspector/InspectorController.cpp
+++ b/WebCore/inspector/InspectorController.cpp
@@ -1008,6 +1008,15 @@ void InspectorController::willSendRequest(unsigned long identifier, ResourceRequ
         resource->updateScriptObject(m_frontend.get());
 }
 
+void InspectorController::markResourceAsCached(unsigned long identifier)
+{
+    if (!enabled())
+        return;
+
+    if (RefPtr<InspectorResource> resource = getTrackedResource(identifier))
+        resource->markAsCached();
+}
+
 void InspectorController::didReceiveResponse(unsigned long identifier, const ResourceResponse& response)
 {
     if (!enabled())
diff --git a/WebCore/inspector/InspectorController.h b/WebCore/inspector/InspectorController.h
index d5b18ba..60523b6 100644
--- a/WebCore/inspector/InspectorController.h
+++ b/WebCore/inspector/InspectorController.h
@@ -166,6 +166,7 @@ public:
 
     void identifierForInitialRequest(unsigned long identifier, DocumentLoader*, const ResourceRequest&);
     void willSendRequest(unsigned long identifier, ResourceRequest&, const ResourceResponse& redirectResponse);
+    void markResourceAsCached(unsigned long identifier);
     void didReceiveResponse(unsigned long identifier, const ResourceResponse&);
     void didReceiveContentLength(unsigned long identifier, int lengthReceived);
     void didFinishLoading(unsigned long identifier, double finishTime);
diff --git a/WebCore/inspector/InspectorResource.cpp b/WebCore/inspector/InspectorResource.cpp
index 814ee55..ac2c9a0 100644
--- a/WebCore/inspector/InspectorResource.cpp
+++ b/WebCore/inspector/InspectorResource.cpp
@@ -161,6 +161,11 @@ void InspectorResource::updateRequest(const ResourceRequest& request)
     m_changes.set(RequestChange);
 }
 
+void InspectorResource::markAsCached()
+{
+    m_cached = true;
+}
+
 void InspectorResource::updateResponse(const ResourceResponse& response)
 {
     m_expectedContentLength = response.expectedContentLength();
@@ -178,7 +183,7 @@ void InspectorResource::updateResponse(const ResourceResponse& response)
     m_connectionID = response.connectionID();
     m_connectionReused = response.connectionReused();
     m_loadTiming = response.resourceLoadTiming();
-    m_cached = response.wasCached();
+    m_cached = m_cached || response.wasCached();
 
     if (!m_cached && m_loadTiming && m_loadTiming->requestTime)
         m_responseReceivedTime = m_loadTiming->requestTime + m_loadTiming->receiveHeadersEnd / 1000.0;
diff --git a/WebCore/inspector/InspectorResource.h b/WebCore/inspector/InspectorResource.h
index 8a207b0..914232e 100644
--- a/WebCore/inspector/InspectorResource.h
+++ b/WebCore/inspector/InspectorResource.h
@@ -90,6 +90,7 @@ namespace WebCore {
         void releaseScriptObject(InspectorFrontend* frontend);
 
         void updateRequest(const ResourceRequest&);
+        void markAsCached();
         void updateResponse(const ResourceResponse&);
 
 #if ENABLE(WEB_SOCKETS)
diff --git a/WebCore/loader/FrameLoader.cpp b/WebCore/loader/FrameLoader.cpp
index 2ec6f72..045b96b 100644
--- a/WebCore/loader/FrameLoader.cpp
+++ b/WebCore/loader/FrameLoader.cpp
@@ -3043,6 +3043,9 @@ void FrameLoader::loadedResourceFromMemoryCache(const CachedResource* resource)
     unsigned long identifier;
     ResourceError error;
     requestFromDelegate(request, identifier, error);
+#if ENABLE(INSPECTOR)
+    page->inspectorController()->markResourceAsCached(identifier);
+#endif
     notifier()->sendRemainingDelegateMessages(m_documentLoader.get(), identifier, resource->response(), resource->encodedSize(), error);
 }
 

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list