Title: [132644] trunk/Source/WebCore
Revision
132644
Author
[email protected]
Date
2012-10-26 06:20:38 -0700 (Fri, 26 Oct 2012)

Log Message

Memory instrumentation: report memory occupied by ResourceRequest instead of its base ResourceRequestBase
https://bugs.webkit.org/show_bug.cgi?id=100497

Reviewed by Alexander Pavlov.

Added memory reporting method to Chromium implementation of ResourceRequest.

* platform/network/ResourceRequestBase.cpp:
(WebCore::ResourceRequestBase::reportMemoryUsageBase): Renamed reportMemoryUsage
on ResourceRequestBase to reportMemoryUsageBase and made it protected. I'd
rather make ResourceRequestBase::reportMemoryUsage virtual and override it
in the descendant but ResourceRequestBase doesn't have any virtual methods
and shouldn't be used directly (ResourceRequest should be used instead).
* platform/network/ResourceRequestBase.h:
(ResourceRequestBase):
* platform/network/chromium/ResourceRequest.cpp:
(WebCore::ResourceRequest::reportMemoryUsage):
(WebCore):
* platform/network/chromium/ResourceRequest.h:
(ResourceRequest):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (132643 => 132644)


--- trunk/Source/WebCore/ChangeLog	2012-10-26 13:17:51 UTC (rev 132643)
+++ trunk/Source/WebCore/ChangeLog	2012-10-26 13:20:38 UTC (rev 132644)
@@ -1,3 +1,26 @@
+2012-10-26  Yury Semikhatsky  <[email protected]>
+
+        Memory instrumentation: report memory occupied by ResourceRequest instead of its base ResourceRequestBase
+        https://bugs.webkit.org/show_bug.cgi?id=100497
+
+        Reviewed by Alexander Pavlov.
+
+        Added memory reporting method to Chromium implementation of ResourceRequest.
+
+        * platform/network/ResourceRequestBase.cpp:
+        (WebCore::ResourceRequestBase::reportMemoryUsageBase): Renamed reportMemoryUsage
+        on ResourceRequestBase to reportMemoryUsageBase and made it protected. I'd
+        rather make ResourceRequestBase::reportMemoryUsage virtual and override it
+        in the descendant but ResourceRequestBase doesn't have any virtual methods
+        and shouldn't be used directly (ResourceRequest should be used instead).
+        * platform/network/ResourceRequestBase.h:
+        (ResourceRequestBase):
+        * platform/network/chromium/ResourceRequest.cpp:
+        (WebCore::ResourceRequest::reportMemoryUsage):
+        (WebCore):
+        * platform/network/chromium/ResourceRequest.h:
+        (ResourceRequest):
+
 2012-10-26  Alexander Pavlov  <[email protected]>
 
         Web Inspector: Remove the on-hover highlighting of console messages

Modified: trunk/Source/WebCore/platform/network/ResourceRequestBase.cpp (132643 => 132644)


--- trunk/Source/WebCore/platform/network/ResourceRequestBase.cpp	2012-10-26 13:17:51 UTC (rev 132643)
+++ trunk/Source/WebCore/platform/network/ResourceRequestBase.cpp	2012-10-26 13:20:38 UTC (rev 132644)
@@ -447,7 +447,7 @@
             m_httpHeaderFields.contains("If-Unmodified-Since"));
 }
 
-void ResourceRequestBase::reportMemoryUsage(MemoryObjectInfo* memoryObjectInfo) const
+void ResourceRequestBase::reportMemoryUsageBase(MemoryObjectInfo* memoryObjectInfo) const
 {
     MemoryClassInfo info(memoryObjectInfo, this, PlatformMemoryTypes::Loader);
     info.addMember(m_url);

Modified: trunk/Source/WebCore/platform/network/ResourceRequestBase.h (132643 => 132644)


--- trunk/Source/WebCore/platform/network/ResourceRequestBase.h	2012-10-26 13:17:51 UTC (rev 132643)
+++ trunk/Source/WebCore/platform/network/ResourceRequestBase.h	2012-10-26 13:20:38 UTC (rev 132644)
@@ -132,8 +132,6 @@
         bool reportRawHeaders() const { return m_reportRawHeaders; }
         void setReportRawHeaders(bool reportRawHeaders) { m_reportRawHeaders = reportRawHeaders; }
 
-        void reportMemoryUsage(MemoryObjectInfo*) const;
-
         static double defaultTimeoutInterval(); // May return 0 when using platform default.
         static void setDefaultTimeoutInterval(double);
 
@@ -169,6 +167,8 @@
         void updatePlatformRequest() const; 
         void updateResourceRequest() const; 
 
+        void reportMemoryUsageBase(MemoryObjectInfo*) const;
+
         // The ResourceRequest subclass may "shadow" this method to compare platform specific fields
         static bool platformCompare(const ResourceRequest&, const ResourceRequest&) { return true; }
 

Modified: trunk/Source/WebCore/platform/network/chromium/ResourceRequest.cpp (132643 => 132644)


--- trunk/Source/WebCore/platform/network/chromium/ResourceRequest.cpp	2012-10-26 13:17:51 UTC (rev 132643)
+++ trunk/Source/WebCore/platform/network/chromium/ResourceRequest.cpp	2012-10-26 13:20:38 UTC (rev 132644)
@@ -26,6 +26,8 @@
 #include "config.h"
 #include "ResourceRequest.h"
 
+#include "PlatformMemoryInstrumentation.h"
+
 namespace WebCore {
 
 // This is used by the loader to control the number of issued parallel load requests. 
@@ -58,4 +60,11 @@
     m_targetType = data->m_targetType;
 }
 
+void ResourceRequest::reportMemoryUsage(MemoryObjectInfo* memoryObjectInfo) const
+{
+    MemoryClassInfo info(memoryObjectInfo, this, PlatformMemoryTypes::Loader);
+    ResourceRequestBase::reportMemoryUsageBase(memoryObjectInfo);
+    info.addMember(m_extraData);
+}
+
 } // namespace WebCore

Modified: trunk/Source/WebCore/platform/network/chromium/ResourceRequest.h (132643 => 132644)


--- trunk/Source/WebCore/platform/network/chromium/ResourceRequest.h	2012-10-26 13:17:51 UTC (rev 132643)
+++ trunk/Source/WebCore/platform/network/chromium/ResourceRequest.h	2012-10-26 13:20:38 UTC (rev 132644)
@@ -140,6 +140,8 @@
         TargetType targetType() const { return m_targetType; }
         void setTargetType(TargetType type) { m_targetType = type; }
 
+        void reportMemoryUsage(MemoryObjectInfo*) const;
+
     private:
         friend class ResourceRequestBase;
 
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to