Title: [125415] trunk/Source/WebCore
Revision
125415
Author
[email protected]
Date
2012-08-13 06:24:17 -0700 (Mon, 13 Aug 2012)

Log Message

Web Inspector: add memory instrumentation for Attribute
https://bugs.webkit.org/show_bug.cgi?id=93827

Reviewed by Pavel Feldman.

Attribute's name and value footprint is counted as part of the DOM
component.

* dom/Attribute.h:
(WebCore::Attribute::reportMemoryUsage):
(Attribute):
* dom/ElementAttributeData.cpp:
(WebCore::ElementAttributeData::reportMemoryUsage):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (125414 => 125415)


--- trunk/Source/WebCore/ChangeLog	2012-08-13 13:19:22 UTC (rev 125414)
+++ trunk/Source/WebCore/ChangeLog	2012-08-13 13:24:17 UTC (rev 125415)
@@ -1,3 +1,19 @@
+2012-08-13  Yury Semikhatsky  <[email protected]>
+
+        Web Inspector: add memory instrumentation for Attribute
+        https://bugs.webkit.org/show_bug.cgi?id=93827
+
+        Reviewed by Pavel Feldman.
+
+        Attribute's name and value footprint is counted as part of the DOM
+        component.
+
+        * dom/Attribute.h:
+        (WebCore::Attribute::reportMemoryUsage):
+        (Attribute):
+        * dom/ElementAttributeData.cpp:
+        (WebCore::ElementAttributeData::reportMemoryUsage):
+
 2012-08-13  Vsevolod Vlasov  <[email protected]>
 
         Web Inspector: Polish search/replace toolbar buttons style.

Modified: trunk/Source/WebCore/dom/Attribute.h (125414 => 125415)


--- trunk/Source/WebCore/dom/Attribute.h	2012-08-13 13:19:22 UTC (rev 125414)
+++ trunk/Source/WebCore/dom/Attribute.h	2012-08-13 13:24:17 UTC (rev 125415)
@@ -67,6 +67,13 @@
     // elements may have placed the Attribute in a hash by name.
     void parserSetName(const QualifiedName& name) { m_name = name; }
 
+    void reportMemoryUsage(MemoryObjectInfo* memoryObjectInfo) const
+    {
+        MemoryClassInfo info(memoryObjectInfo, this, MemoryInstrumentation::DOM);
+        info.addInstrumentedMember(m_name);
+        info.addMember(m_value);
+    }
+
 private:
     QualifiedName m_name;
     AtomicString m_value;

Modified: trunk/Source/WebCore/dom/ElementAttributeData.cpp (125414 => 125415)


--- trunk/Source/WebCore/dom/ElementAttributeData.cpp	2012-08-13 13:19:22 UTC (rev 125414)
+++ trunk/Source/WebCore/dom/ElementAttributeData.cpp	2012-08-13 13:24:17 UTC (rev 125415)
@@ -295,6 +295,8 @@
         info.addVectorPtr(m_mutableAttributeVector);
     else
         info.addRawBuffer(m_attributes, m_arraySize * sizeof(Attribute));
+    for (unsigned i = 0, len = length(); i < len; i++)
+        info.addInstrumentedMember(*attributeItem(i));
 }
 
 size_t ElementAttributeData::getAttributeItemIndexSlowCase(const AtomicString& name, bool shouldIgnoreAttributeCase) const
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to