Diff
Modified: trunk/Source/WebCore/ChangeLog (139191 => 139192)
--- trunk/Source/WebCore/ChangeLog 2013-01-09 14:31:59 UTC (rev 139191)
+++ trunk/Source/WebCore/ChangeLog 2013-01-09 15:02:47 UTC (rev 139192)
@@ -1,3 +1,42 @@
+2012-12-29 Ilya Tikhonovsky <[email protected]>
+
+ Web Inspector: Native Memory Instrumentation: fix instrumentation for already instrumented classes 1/N
+ https://bugs.webkit.org/show_bug.cgi?id=106445
+
+ Reviewed by Vsevolod Vlasov.
+
+ The patch has almost mechanical changes.
+
+ * bindings/v8/V8Binding.cpp:
+ * bindings/v8/V8ValueCache.cpp:
+ (WTF):
+ (WebCore::StringCache::reportMemoryUsage):
+ (WebCore):
+ * dom/Document.cpp:
+ (WebCore::Document::reportMemoryUsage):
+ * dom/DocumentStyleSheetCollection.cpp:
+ (WebCore::DocumentStyleSheetCollection::reportMemoryUsage):
+ * dom/ElementRareData.cpp:
+ (WebCore::ElementRareData::reportMemoryUsage):
+ * loader/cache/CachedResource.cpp:
+ (WebCore::CachedResource::reportMemoryUsage):
+ * page/Frame.cpp:
+ (WebCore::Frame::reportMemoryUsage):
+ * page/Page.cpp:
+ (WebCore::Page::reportMemoryUsage):
+ * platform/graphics/skia/NativeImageSkia.cpp:
+ (WebCore::NativeImageSkia::reportMemoryUsage):
+ * platform/network/FormData.cpp:
+ (WebCore::FormData::reportMemoryUsage):
+ (WebCore):
+ (WebCore::FormDataElement::reportMemoryUsage):
+ * platform/network/FormData.h:
+ (FormDataElement):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::reportMemoryUsage):
+ * rendering/style/StyleRareNonInheritedData.cpp:
+ (WebCore::StyleRareNonInheritedData::reportMemoryUsage):
+
2013-01-09 Florin Malita <[email protected]>
[Skia] Implement GraphicsContext::fillRoundedRect() using SkCanvas::drawRRect()
Modified: trunk/Source/WebCore/bindings/v8/V8Binding.cpp (139191 => 139192)
--- trunk/Source/WebCore/bindings/v8/V8Binding.cpp 2013-01-09 14:31:59 UTC (rev 139191)
+++ trunk/Source/WebCore/bindings/v8/V8Binding.cpp 2013-01-09 15:02:47 UTC (rev 139192)
@@ -53,7 +53,6 @@
#include "XPathNSResolver.h"
#include <wtf/MathExtras.h>
#include <wtf/MainThread.h>
-#include <wtf/MemoryInstrumentationHashMap.h>
#include <wtf/StdLibExtras.h>
#include <wtf/Threading.h>
#include <wtf/text/AtomicString.h>
@@ -62,14 +61,6 @@
#include <wtf/text/StringHash.h>
#include <wtf/text/WTFString.h>
-namespace WTF {
-
-template<> struct SequenceMemoryInstrumentationTraits<v8::String*> {
- template <typename I> static void reportMemoryUsage(I, I, MemoryClassInfo&) { }
-};
-
-}
-
namespace WebCore {
v8::Handle<v8::Value> setDOMException(int exceptionCode, v8::Isolate* isolate)
@@ -190,12 +181,6 @@
return v8::Persistent<v8::FunctionTemplate>::New(result);
}
-void StringCache::reportMemoryUsage(MemoryObjectInfo* memoryObjectInfo) const
-{
- MemoryClassInfo info(memoryObjectInfo, this, WebCoreMemoryTypes::Binding);
- info.addMember(m_stringCache);
-}
-
PassRefPtr<DOMStringList> toDOMStringList(v8::Handle<v8::Value> value, v8::Isolate* isolate)
{
v8::Local<v8::Value> v8Value(v8::Local<v8::Value>::New(value));
Modified: trunk/Source/WebCore/bindings/v8/V8ValueCache.cpp (139191 => 139192)
--- trunk/Source/WebCore/bindings/v8/V8ValueCache.cpp 2013-01-09 14:31:59 UTC (rev 139191)
+++ trunk/Source/WebCore/bindings/v8/V8ValueCache.cpp 2013-01-09 15:02:47 UTC (rev 139192)
@@ -27,7 +27,17 @@
#include "V8ValueCache.h"
#include "V8Binding.h"
+#include "WebCoreMemoryInstrumentation.h"
+#include <wtf/MemoryInstrumentationHashMap.h>
+namespace WTF {
+
+template<> struct SequenceMemoryInstrumentationTraits<v8::String*> {
+ template <typename I> static void reportMemoryUsage(I, I, MemoryClassInfo&) { }
+};
+
+}
+
namespace WebCore {
static v8::Local<v8::String> makeExternalString(const String& string)
@@ -100,6 +110,14 @@
return newString;
}
+void StringCache::reportMemoryUsage(MemoryObjectInfo* memoryObjectInfo) const
+{
+ MemoryClassInfo info(memoryObjectInfo, this, WebCoreMemoryTypes::Binding);
+ info.addMember(m_stringCache);
+ info.ignoreMember(m_lastV8String);
+ info.addMember(m_lastStringImpl);
+}
+
IntegerCache::IntegerCache()
{
v8::HandleScope handleScope;
Modified: trunk/Source/WebCore/dom/Document.cpp (139191 => 139192)
--- trunk/Source/WebCore/dom/Document.cpp 2013-01-09 14:31:59 UTC (rev 139191)
+++ trunk/Source/WebCore/dom/Document.cpp 2013-01-09 15:02:47 UTC (rev 139192)
@@ -176,6 +176,7 @@
#include <wtf/CurrentTime.h>
#include <wtf/HashFunctions.h>
#include <wtf/MainThread.h>
+#include <wtf/MemoryInstrumentationHashCountedSet.h>
#include <wtf/MemoryInstrumentationHashMap.h>
#include <wtf/MemoryInstrumentationHashSet.h>
#include <wtf/MemoryInstrumentationVector.h>
@@ -5948,6 +5949,76 @@
info.addMember(m_prerenderer);
#endif
info.addMember(m_listsInvalidatedAtDocument);
+ info.addMember(m_styleResolverThrowawayTimer);
+ info.addMember(m_domWindow);
+ info.addMember(m_parser);
+ info.addMember(m_contextFeatures);
+ info.addMember(m_focusedNode);
+ info.addMember(m_hoverNode);
+ info.addMember(m_documentElement);
+ info.addMember(m_visitedLinkState);
+ info.addMember(m_styleRecalcTimer);
+ info.addMember(m_titleElement);
+ info.ignoreMember(m_renderArena);
+ info.addMember(m_axObjectCache);
+ info.addMember(m_markers);
+ info.addMember(m_cssTarget);
+ info.addMember(m_updateFocusAppearanceTimer);
+ info.addMember(m_pendingStateObject);
+ info.addMember(m_scriptRunner);
+#if ENABLE(XSLT)
+ info.addMember(m_transformSource);
+ info.addMember(m_transformSourceDocument);
+#endif
+ info.addMember(m_savedRenderer);
+ info.addMember(m_decoder);
+ info.addMember(m_xpathEvaluator);
+#if ENABLE(SVG)
+ info.addMember(m_svgExtensions);
+#endif
+ info.addMember(m_selectorQueryCache);
+ info.addMember(m_renderer);
+ info.addMember(m_weakReference);
+ info.addMember(m_idAttributeName);
+#if ENABLE(FULLSCREEN_API)
+ info.addMember(m_fullScreenElement);
+ info.addMember(m_fullScreenElementStack);
+ info.addMember(m_fullScreenRenderer);
+ info.addMember(m_fullScreenChangeDelayTimer);
+ info.addMember(m_fullScreenChangeEventTargetQueue);
+ info.addMember(m_fullScreenErrorEventTargetQueue);
+ info.addMember(m_savedPlaceholderRenderStyle);
+#endif
+#if ENABLE(DIALOG_ELEMENT)
+ info.addMember(m_topLayerElements);
+#endif
+ info.addMember(m_loadEventDelayTimer);
+ info.addMember(m_viewportArguments);
+ info.addMember(m_documentTiming);
+ info.addMember(m_mediaQueryMatcher);
+#if ENABLE(TOUCH_EVENTS)
+ info.addMember(m_touchEventTargets);
+#endif
+#if ENABLE(REQUEST_ANIMATION_FRAME)
+ info.addMember(m_scriptedAnimationController);
+#endif
+ info.addMember(m_pendingTasksTimer);
+#if ENABLE(TEXT_AUTOSIZING)
+ info.addMember(m_textAutosizer);
+#endif
+ info.addMember(m_visualUpdatesSuppressionTimer);
+ info.addMember(m_namedFlows);
+#if ENABLE(CSP_NEXT)
+ info.addMember(m_domSecurityPolicy);
+#endif
+ info.addMember(m_sharedObjectPoolClearTimer);
+ info.addMember(m_sharedObjectPool);
+ info.addMember(m_localeCache);
+#if ENABLE(TEMPLATE_ELEMENT)
+ info.addMember(m_templateDocument);
+ info.addMember(m_templateDocumentHost);
+#endif
+ info.addMember(m_activeElement);
}
bool Document::haveStylesheetsLoaded() const
Modified: trunk/Source/WebCore/dom/DocumentStyleSheetCollection.cpp (139191 => 139192)
--- trunk/Source/WebCore/dom/DocumentStyleSheetCollection.cpp 2013-01-09 14:31:59 UTC (rev 139191)
+++ trunk/Source/WebCore/dom/DocumentStyleSheetCollection.cpp 2013-01-09 15:02:47 UTC (rev 139192)
@@ -510,6 +510,7 @@
info.addMember(m_styleSheetCandidateNodes);
info.addMember(m_preferredStylesheetSetName);
info.addMember(m_selectedStylesheetSetName);
+ info.addMember(m_document);
}
}
Modified: trunk/Source/WebCore/dom/ElementRareData.cpp (139191 => 139192)
--- trunk/Source/WebCore/dom/ElementRareData.cpp 2013-01-09 14:31:59 UTC (rev 139191)
+++ trunk/Source/WebCore/dom/ElementRareData.cpp 2013-01-09 15:02:47 UTC (rev 139192)
@@ -46,6 +46,8 @@
info.addMember(m_classList);
info.addMember(m_shadow);
info.addMember(m_attributeMap);
+ info.addMember(m_generatedBefore);
+ info.addMember(m_generatedAfter);
}
} // namespace WebCore
Modified: trunk/Source/WebCore/loader/cache/CachedResource.cpp (139191 => 139192)
--- trunk/Source/WebCore/loader/cache/CachedResource.cpp 2013-01-09 14:31:59 UTC (rev 139191)
+++ trunk/Source/WebCore/loader/cache/CachedResource.cpp 2013-01-09 15:02:47 UTC (rev 139192)
@@ -893,6 +893,7 @@
MemoryClassInfo info(memoryObjectInfo, this, WebCoreMemoryTypes::CachedResource);
memoryObjectInfo->setName(url().string());
info.addMember(m_resourceRequest);
+ info.addMember(m_fragmentIdentifierForRequest);
info.addMember(m_clients);
info.addMember(m_accept);
info.addMember(m_loader);
@@ -907,6 +908,9 @@
info.addMember(m_resourceToRevalidate);
info.addMember(m_proxyResource);
info.addMember(m_handlesToRevalidate);
+ info.addMember(m_options);
+ info.addMember(m_decodedDataDeletionTimer);
+ info.ignoreMember(m_clientsAwaitingCallback);
if (m_purgeableData && !m_purgeableData->wasPurged())
info.addRawBuffer(m_purgeableData.get(), m_purgeableData->size());
Modified: trunk/Source/WebCore/page/Frame.cpp (139191 => 139192)
--- trunk/Source/WebCore/page/Frame.cpp 2013-01-09 14:31:59 UTC (rev 139191)
+++ trunk/Source/WebCore/page/Frame.cpp 2013-01-09 15:02:47 UTC (rev 139192)
@@ -668,8 +668,12 @@
void Frame::reportMemoryUsage(MemoryObjectInfo* memoryObjectInfo) const
{
MemoryClassInfo info(memoryObjectInfo, this, WebCoreMemoryTypes::DOM);
- info.addMember(m_doc.get());
+ info.addMember(m_doc);
+ info.ignoreMember(m_view);
+ info.addMember(m_ownerElement);
+ info.addMember(m_page);
info.addMember(m_loader);
+ info.ignoreMember(m_destructionObservers);
}
void Frame::willDetachPage()
Modified: trunk/Source/WebCore/page/Page.cpp (139191 => 139192)
--- trunk/Source/WebCore/page/Page.cpp 2013-01-09 14:31:59 UTC (rev 139191)
+++ trunk/Source/WebCore/page/Page.cpp 2013-01-09 15:02:47 UTC (rev 139192)
@@ -1356,7 +1356,6 @@
info.addMember(m_mainFrame);
info.addMember(m_pluginData);
info.addMember(m_theme);
- info.addWeakPointer(m_editorClient);
info.addMember(m_featureObserver);
info.addMember(m_groupName);
info.addMember(m_pagination);
@@ -1364,13 +1363,17 @@
info.addMember(m_userStyleSheet);
info.addMember(m_singlePageGroup);
info.addMember(m_group);
- info.addWeakPointer(m_debugger);
info.addMember(m_sessionStorage);
info.addMember(m_relevantUnpaintedRenderObjects);
info.addMember(m_relevantPaintedRegion);
info.addMember(m_relevantUnpaintedRegion);
- info.addWeakPointer(m_alternativeTextClient);
info.addMember(m_seenPlugins);
+ info.addMember(m_seenMediaEngines);
+
+ info.ignoreMember(m_debugger);
+ info.ignoreMember(m_alternativeTextClient);
+ info.ignoreMember(m_editorClient);
+ info.ignoreMember(m_validationMessageClient);
}
Page::PageClients::PageClients()
Modified: trunk/Source/WebCore/platform/graphics/skia/NativeImageSkia.cpp (139191 => 139192)
--- trunk/Source/WebCore/platform/graphics/skia/NativeImageSkia.cpp 2013-01-09 14:31:59 UTC (rev 139191)
+++ trunk/Source/WebCore/platform/graphics/skia/NativeImageSkia.cpp 2013-01-09 15:02:47 UTC (rev 139192)
@@ -181,6 +181,7 @@
MemoryClassInfo info(memoryObjectInfo, this);
info.addMember(m_image);
info.addMember(m_resizedImage);
+ info.addMember(m_cachedImageInfo);
}
void reportMemoryUsage(const NativeImageSkia* image, MemoryObjectInfo* memoryObjectInfo)
Modified: trunk/Source/WebCore/platform/network/FormData.cpp (139191 => 139192)
--- trunk/Source/WebCore/platform/network/FormData.cpp 2013-01-09 14:31:59 UTC (rev 139191)
+++ trunk/Source/WebCore/platform/network/FormData.cpp 2013-01-09 15:02:47 UTC (rev 139192)
@@ -422,8 +422,20 @@
{
MemoryClassInfo info(memoryObjectInfo, this, PlatformMemoryTypes::Loader);
info.addMember(m_boundary);
+ info.addMember(m_elements);
}
+void FormDataElement::reportMemoryUsage(MemoryObjectInfo* memoryObjectInfo) const
+{
+ MemoryClassInfo info(memoryObjectInfo, this, PlatformMemoryTypes::Loader);
+ info.addMember(m_data);
+ info.addMember(m_filename);
+#if ENABLE(BLOB)
+ info.addMember(m_url);
+#endif
+ info.addMember(m_generatedFilename);
+}
+
static void encodeElement(Encoder& encoder, const FormDataElement& element)
{
encoder.encodeUInt32(element.m_type);
Modified: trunk/Source/WebCore/platform/network/FormData.h (139191 => 139192)
--- trunk/Source/WebCore/platform/network/FormData.h 2013-01-09 14:31:59 UTC (rev 139191)
+++ trunk/Source/WebCore/platform/network/FormData.h 2013-01-09 15:02:47 UTC (rev 139192)
@@ -47,6 +47,8 @@
FormDataElement(const KURL& url, long long start, long long length, double expectedFileModificationTime) : m_type(encodedURL), m_url(url), m_fileStart(start), m_fileLength(length), m_expectedFileModificationTime(expectedFileModificationTime), m_shouldGenerateFile(false) { }
#endif
+ void reportMemoryUsage(MemoryObjectInfo*) const;
+
enum Type {
data,
encodedFile
Modified: trunk/Source/WebCore/rendering/RenderView.cpp (139191 => 139192)
--- trunk/Source/WebCore/rendering/RenderView.cpp 2013-01-09 14:31:59 UTC (rev 139191)
+++ trunk/Source/WebCore/rendering/RenderView.cpp 2013-01-09 15:02:47 UTC (rev 139192)
@@ -1030,6 +1030,7 @@
info.addMember(m_flowThreadController);
info.addMember(m_intervalArena);
info.addWeakPointer(m_renderQuoteHead);
+ info.addMember(m_legacyPrinting);
}
} // namespace WebCore
Modified: trunk/Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp (139191 => 139192)
--- trunk/Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp 2013-01-09 14:31:59 UTC (rev 139191)
+++ trunk/Source/WebCore/rendering/style/StyleRareNonInheritedData.cpp 2013-01-09 15:02:47 UTC (rev 139192)
@@ -343,6 +343,12 @@
info.addMember(m_clipPath);
info.addMember(m_flowThread);
info.addMember(m_regionThread);
+
+ info.ignoreMember(m_perspectiveOriginX);
+ info.ignoreMember(m_perspectiveOriginY);
+ info.ignoreMember(m_pageSize);
+ info.ignoreMember(m_shapeMargin);
+ info.ignoreMember(m_shapePadding);
}
} // namespace WebCore