Index: src/effects/SkPictureImageFilter.cpp |
diff --git a/src/effects/SkPictureImageFilter.cpp b/src/effects/SkPictureImageFilter.cpp |
index ae9576043f994c3142294fde0dbcb30acf750a3a..66494fbc7143bf56850f62f1eab90be84e9f5e8d 100644 |
--- a/src/effects/SkPictureImageFilter.cpp |
+++ b/src/effects/SkPictureImageFilter.cpp |
@@ -34,13 +34,23 @@ SkPictureImageFilter::~SkPictureImageFilter() { |
SkPictureImageFilter::SkPictureImageFilter(SkReadBuffer& buffer) |
: INHERITED(0, buffer), |
fPicture(NULL) { |
- // FIXME: unflatten picture here. |
+#ifdef SK_ALLOW_PICTUREIMAGEFILTER_SERIALIZATION |
+ if (buffer.readBool()) { |
+ fPicture = SkPicture::CreateFromBuffer(buffer); |
+ } |
+#endif |
buffer.readRect(&fRect); |
} |
void SkPictureImageFilter::flatten(SkWriteBuffer& buffer) const { |
this->INHERITED::flatten(buffer); |
- // FIXME: flatten picture here. |
+#ifdef SK_ALLOW_PICTUREIMAGEFILTER_SERIALIZATION |
+ bool hasPicture = (fPicture != NULL); |
+ buffer.writeBool(hasPicture); |
Stephen White
2014/02/05 16:44:39
Maybe we should just writeBool(false) (and readBoo
sugoi1
2014/02/05 16:48:58
Good idea, I'll do that.
|
+ if (hasPicture) { |
+ fPicture->flatten(buffer); |
+ } |
+#endif |
buffer.writeRect(fRect); |
} |