Index: include/core/SkTextBlob.h |
diff --git a/include/core/SkTextBlob.h b/include/core/SkTextBlob.h |
index 8ee1d1919628b10e0d3f3ca6085a02ad619a68b2..334cfb98c4595d2d51844e55c82880b89de9a34e 100644 |
--- a/include/core/SkTextBlob.h |
+++ b/include/core/SkTextBlob.h |
@@ -79,7 +79,15 @@ private: |
SkTextBlob(int runCount, const SkRect& bounds); |
virtual ~SkTextBlob(); |
- virtual void internal_dispose() const SK_OVERRIDE; |
+ |
+ // Memory for objects of this class is created with sk_malloc rather than operator new and must |
+ // be freed with sk_free. |
+ void operator delete(void* p) { sk_free(p); } |
+ void* operator new(size_t) { |
+ SkFAIL("All blobs are created by placement new."); |
+ return sk_malloc_throw(0); |
+ } |
+ void* operator new(size_t, void* p) { return p; } |
static unsigned ScalarsPerGlyph(GlyphPositioning pos); |