Index: src/core/SkPicture.cpp |
diff --git a/src/core/SkPicture.cpp b/src/core/SkPicture.cpp |
index 2b488dec02af69953e56124bb122f8831c7eeeb3..07d324fdb71eb5713906afab66d0fb22fb75f890 100644 |
--- a/src/core/SkPicture.cpp |
+++ b/src/core/SkPicture.cpp |
@@ -283,6 +283,26 @@ bool SkPicture::StreamIsSKP(SkStream* stream, SkPictInfo* pInfo) { |
return true; |
} |
+SkPicture::SkPicture(SkStream* stream, bool* success, InstallPixelRefProc proc) { |
+ fRecord = NULL; |
+ SkAutoTUnref<SkPicture> picture(CreateFromStream(stream, proc)); |
+ if (NULL == picture.get()) { |
+ fPlayback = NULL; |
+ fWidth = fHeight = 0; |
+ if (success) { |
+ *success = false; |
+ } |
+ } else { |
+ fPlayback = picture->fPlayback; |
+ picture->fPlayback = NULL; |
+ fWidth = picture->fWidth; |
+ fHeight = picture->fHeight; |
+ if (success) { |
+ *success = true; |
+ } |
+ } |
+} |
+ |
SkPicture::SkPicture(SkPicturePlayback* playback, int width, int height) |
: fPlayback(playback) |
, fRecord(NULL) |