Index: src/pdf/SkPDFBitmap.cpp |
diff --git a/src/pdf/SkPDFBitmap.cpp b/src/pdf/SkPDFBitmap.cpp |
index 03230341a4cd6604adaeb7d6be9aac2f77ac6a45..23c88c129f2a8eb90a20e6bd713a2647c589a00d 100644 |
--- a/src/pdf/SkPDFBitmap.cpp |
+++ b/src/pdf/SkPDFBitmap.cpp |
@@ -252,7 +252,7 @@ SkPDFBitmap::SkPDFBitmap(SkPDFCanon* canon, |
SkPDFObject* smask) |
: fCanon(canon), fBitmap(bm), fSMask(smask) {} |
-SkPDFBitmap::~SkPDFBitmap() { fCanon->removeBitmap(this); } |
+SkPDFBitmap::~SkPDFBitmap() {} |
//////////////////////////////////////////////////////////////////////////////// |
static bool is_transparent(const SkBitmap& bm) { |
@@ -313,6 +313,6 @@ SkPDFBitmap* SkPDFBitmap::Create(SkPDFCanon* canon, |
smask = SkNEW_ARGS(PDFAlphaBitmap, (bm)); |
} |
pdfBitmap = SkNEW_ARGS(SkPDFBitmap, (canon, bm, smask)); |
- canon->addBitmap(pdfBitmap); |
+ canon->addBitmap(SkRef(pdfBitmap)); |
mtklein
2015/02/27 19:50:17
This seems to distribute the responsibility for re
hal.canary
2015/02/27 20:13:42
Done.
|
return pdfBitmap; |
} |