diff options
Diffstat (limited to 'WebCore/css')
-rw-r--r-- | WebCore/css/CSSImportRule.cpp | 22 | ||||
-rw-r--r-- | WebCore/css/CSSImportRule.h | 8 | ||||
-rw-r--r-- | WebCore/css/StyleBase.cpp | 24 | ||||
-rw-r--r-- | WebCore/css/StyleBase.h | 6 |
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 |