Index: src/core/SkPictureRecorder.cpp |
diff --git a/src/core/SkPictureRecorder.cpp b/src/core/SkPictureRecorder.cpp |
index 3441a0dfeb265f14d4568d50af188b6fa1446553..bc8bffb9b3616938cbee589b7ea370c5e39be066 100644 |
--- a/src/core/SkPictureRecorder.cpp |
+++ b/src/core/SkPictureRecorder.cpp |
@@ -5,6 +5,7 @@ |
* found in the LICENSE file. |
*/ |
+#include "SkData.h" |
#include "SkLayerInfo.h" |
#include "SkPictureRecorder.h" |
#include "SkRecord.h" |
@@ -60,7 +61,12 @@ SkPicture* SkPictureRecorder::endRecording() { |
} |
} |
- SkPicture* pict = SkNEW_ARGS(SkPicture, (fCullWidth, fCullHeight, fRecord.detach(), fBBH.get())); |
+ // TODO: we should remember these from our caller |
+ SkBBHFactory* factory = NULL; |
+ uint32_t recordFlags = 0; |
+ SkAutoDataUnref drawablePicts(fRecorder->newDrawableSnapshot(factory, recordFlags)); |
+ SkPicture* pict = SkNEW_ARGS(SkPicture, (fCullWidth, fCullHeight, fRecord.detach(), |
+ drawablePicts, fBBH.get())); |
if (saveLayerData) { |
pict->EXPERIMENTAL_addAccelData(saveLayerData); |
@@ -73,5 +79,7 @@ void SkPictureRecorder::partialReplay(SkCanvas* canvas) const { |
if (NULL == canvas) { |
return; |
} |
- SkRecordDraw(*fRecord, canvas, NULL/*bbh*/, NULL/*callback*/); |
+ |
+ int drawableCount = 0; |
+ SkRecordDraw(*fRecord, canvas, NULL, drawableCount, NULL/*bbh*/, NULL/*callback*/); |
} |