summaryrefslogtreecommitdiffstats
path: root/WebCore/css
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/css')
-rw-r--r--WebCore/css/CSSImportRule.cpp22
-rw-r--r--WebCore/css/CSSImportRule.h8
-rw-r--r--WebCore/css/StyleBase.cpp24
-rw-r--r--WebCore/css/StyleBase.h6
4 files changed, 52 insertions, 8 deletions
diff --git a/WebCore/css/CSSImportRule.cpp b/WebCore/css/CSSImportRule.cpp
index 6e62f6d..2fe7abf 100644
--- a/WebCore/css/CSSImportRule.cpp
+++ b/WebCore/css/CSSImportRule.cpp
@@ -147,4 +147,26 @@ void CSSImportRule::addSubresourceStyleURLs(ListHashSet<KURL>& urls)
addSubresourceURL(urls, m_styleSheet->baseURL());
}
+#ifdef ANDROID_INSTRUMENT
+void* CSSImportRule::operator new(size_t size)
+{
+ return StyleBase::operator new(size);
+}
+
+void* CSSImportRule::operator new[](size_t size)
+{
+ return StyleBase::operator new[](size);
+}
+
+void CSSImportRule::operator delete(void* p, size_t size)
+{
+ StyleBase::operator delete(p, size);
+}
+
+void CSSImportRule::operator delete[](void* p, size_t size)
+{
+ StyleBase::operator delete[](p, size);
+}
+#endif
+
} // namespace WebCore
diff --git a/WebCore/css/CSSImportRule.h b/WebCore/css/CSSImportRule.h
index f546006..c58088c 100644
--- a/WebCore/css/CSSImportRule.h
+++ b/WebCore/css/CSSImportRule.h
@@ -65,6 +65,14 @@ private:
// from CachedResourceClient
virtual void setCSSStyleSheet(const String& url, const String& charset, const CachedCSSStyleSheet*);
+#ifdef ANDROID_INSTRUMENT
+ // Overridden to resolve the ambiguous
+ void* operator new(size_t size);
+ void* operator new[](size_t size);
+ void operator delete(void* p, size_t size);
+ void operator delete[](void* p, size_t size);
+#endif
+
String m_strHref;
RefPtr<MediaList> m_lstMedia;
RefPtr<CSSStyleSheet> m_styleSheet;
diff --git a/WebCore/css/StyleBase.cpp b/WebCore/css/StyleBase.cpp
index aaa7626..23a60ee 100644
--- a/WebCore/css/StyleBase.cpp
+++ b/WebCore/css/StyleBase.cpp
@@ -68,16 +68,28 @@ KURL StyleBase::baseURL() const
#ifdef ANDROID_INSTRUMENT
static size_t styleSize = 0;
-void* StyleBase::operator new(size_t s) throw()
+void* StyleBase::operator new(size_t size)
{
- styleSize += s;
- return ::operator new(s);
+ styleSize += size;
+ return ::operator new(size);
}
-void StyleBase::operator delete(void* ptr, size_t s)
+void* StyleBase::operator new[](size_t size)
{
- styleSize -= s;
- ::operator delete(ptr);
+ styleSize += size;
+ return ::operator new[](size);
+}
+
+void StyleBase::operator delete(void* p, size_t size)
+{
+ styleSize -= size;
+ ::operator delete(p);
+}
+
+void StyleBase::operator delete[](void* p, size_t size)
+{
+ styleSize -= size;
+ ::operator delete[](p);
}
size_t StyleBase::reportStyleSize()
diff --git a/WebCore/css/StyleBase.h b/WebCore/css/StyleBase.h
index a1660ab..5f9124d 100644
--- a/WebCore/css/StyleBase.h
+++ b/WebCore/css/StyleBase.h
@@ -74,10 +74,12 @@ namespace WebCore {
#ifdef ANDROID_INSTRUMENT
// Overridden to prevent the normal new from being called.
- void* operator new(size_t) throw();
+ void* operator new(size_t size);
+ void* operator new[](size_t size);
// Overridden to prevent the normal delete from being called.
- void operator delete(void*, size_t);
+ void operator delete(void* p, size_t size);
+ void operator delete[](void* p, size_t size);
static size_t reportStyleSize();
#endif