Index: src/effects/SkPictureImageFilter.cpp |
diff --git a/src/effects/SkPictureImageFilter.cpp b/src/effects/SkPictureImageFilter.cpp |
index b054ee21a868369225f29561fba1b0459344696c..bc9d85bb4056a43e2831818ce1fa4aa7ebd6da73 100644 |
--- a/src/effects/SkPictureImageFilter.cpp |
+++ b/src/effects/SkPictureImageFilter.cpp |
@@ -33,13 +33,19 @@ SkPictureImageFilter::~SkPictureImageFilter() { |
SkPictureImageFilter::SkPictureImageFilter(SkFlattenableReadBuffer& buffer) |
: INHERITED(0, buffer), |
fPicture(NULL) { |
- // FIXME: unflatten picture here. |
+ if (buffer.readBool()) { |
+ fPicture = SkPicture::CreateFromBuffer(buffer); |
+ } |
buffer.readRect(&fRect); |
} |
void SkPictureImageFilter::flatten(SkFlattenableWriteBuffer& buffer) const { |
this->INHERITED::flatten(buffer); |
- // FIXME: flatten picture here. |
+ bool hasPicture = (fPicture != NULL); |
+ buffer.writeBool(hasPicture); |
+ if (hasPicture) { |
+ fPicture->flatten(buffer); |
+ } |
buffer.writeRect(fRect); |
} |