| Index: src/utils/debugger/SkDrawCommand.h | 
| diff --git a/src/utils/debugger/SkDrawCommand.h b/src/utils/debugger/SkDrawCommand.h | 
| index 760ce520525ac74a3f7a913ea6cbd4c20d514837..538dd23c209218fa9927e6604005e1bc43947654 100644 | 
| --- a/src/utils/debugger/SkDrawCommand.h | 
| +++ b/src/utils/debugger/SkDrawCommand.h | 
| @@ -16,6 +16,7 @@ class SK_API SkDrawCommand { | 
| public: | 
| enum OpType { | 
| kBeginCommentGroup_OpType, | 
| +        kBeginDrawPicture_OpType, | 
| kClipPath_OpType, | 
| kClipRegion_OpType, | 
| kClipRect_OpType, | 
| @@ -31,7 +32,6 @@ public: | 
| kDrawPaint_OpType, | 
| kDrawPatch_OpType, | 
| kDrawPath_OpType, | 
| -        kDrawPicture_OpType, | 
| kDrawPoints_OpType, | 
| kDrawPosText_OpType, | 
| kDrawPosTextH_OpType, | 
| @@ -43,6 +43,7 @@ public: | 
| kDrawTextOnPath_OpType, | 
| kDrawVertices_OpType, | 
| kEndCommentGroup_OpType, | 
| +        kEndDrawPicture_OpType, | 
| kRestore_OpType, | 
| kSave_OpType, | 
| kSaveLayer_OpType, | 
| @@ -337,18 +338,31 @@ private: | 
| typedef SkDrawCommand INHERITED; | 
| }; | 
|  | 
| -class SkDrawPictureCommand : public SkDrawCommand { | 
| +class SkBeginDrawPictureCommand : public SkDrawCommand { | 
| public: | 
| -    SkDrawPictureCommand(const SkPicture* picture, const SkMatrix* matrix, const SkPaint* paint); | 
| +    SkBeginDrawPictureCommand(const SkPicture* picture, | 
| +                              const SkMatrix* matrix, | 
| +                              const SkPaint* paint); | 
| + | 
| void execute(SkCanvas* canvas) const override; | 
| bool render(SkCanvas* canvas) const override; | 
|  | 
| private: | 
| SkAutoTUnref<const SkPicture> fPicture; | 
| -    SkMatrix                      fMatrix; | 
| -    SkMatrix*                     fMatrixPtr; | 
| -    SkPaint                       fPaint; | 
| -    SkPaint*                      fPaintPtr; | 
| +    SkTLazy<SkMatrix>             fMatrix; | 
| +    SkTLazy<SkPaint>              fPaint; | 
| + | 
| +    typedef SkDrawCommand INHERITED; | 
| +}; | 
| + | 
| +class SkEndDrawPictureCommand : public SkDrawCommand { | 
| +public: | 
| +    SkEndDrawPictureCommand(bool restore); | 
| + | 
| +    void execute(SkCanvas* canvas) const override; | 
| + | 
| +private: | 
| +    bool fRestore; | 
|  | 
| typedef SkDrawCommand INHERITED; | 
| }; | 
|  |