| Index: src/pipe/SkGPipeRead.cpp
 | 
| diff --git a/src/pipe/SkGPipeRead.cpp b/src/pipe/SkGPipeRead.cpp
 | 
| index f95bb7c40463ade677f035a4f4c33cb6b2101fc2..e61bb0f88d6c6891c81a45acc92a823201e33626 100644
 | 
| --- a/src/pipe/SkGPipeRead.cpp
 | 
| +++ b/src/pipe/SkGPipeRead.cpp
 | 
| @@ -319,13 +319,16 @@ static void translate_rp(SkCanvas* canvas, SkReader32* reader, uint32_t op32,
 | 
|  
 | 
|  static void save_rp(SkCanvas* canvas, SkReader32* reader, uint32_t op32,
 | 
|                      SkGPipeState* state) {
 | 
| -    canvas->save((SkCanvas::SaveFlags)DrawOp_unpackData(op32));
 | 
| +    canvas->save(
 | 
| +#ifdef SK_SUPPORT_LEGACY_SAVEFLAGS
 | 
| +                 (SkCanvas::SaveFlags)DrawOp_unpackData(op32)
 | 
| +#endif
 | 
| +                 );
 | 
|  }
 | 
|  
 | 
|  static void saveLayer_rp(SkCanvas* canvas, SkReader32* reader, uint32_t op32,
 | 
|                           SkGPipeState* state) {
 | 
|      unsigned flags = DrawOp_unpackFlags(op32);
 | 
| -    SkCanvas::SaveFlags saveFlags = (SkCanvas::SaveFlags)DrawOp_unpackData(op32);
 | 
|  
 | 
|      const SkRect* bounds = NULL;
 | 
|      if (flags & kSaveLayer_HasBounds_DrawOpFlag) {
 | 
| @@ -335,7 +338,11 @@ static void saveLayer_rp(SkCanvas* canvas, SkReader32* reader, uint32_t op32,
 | 
|      if (flags & kSaveLayer_HasPaint_DrawOpFlag) {
 | 
|          paint = &state->paint();
 | 
|      }
 | 
| -    canvas->saveLayer(bounds, paint, saveFlags);
 | 
| +    canvas->saveLayer(bounds, paint
 | 
| +#ifdef SK_SUPPORT_LEGACY_SAVEFLAGS
 | 
| +                      , (SkCanvas::SaveFlags)DrawOp_unpackData(op32)
 | 
| +#endif
 | 
| +                      );
 | 
|  }
 | 
|  
 | 
|  static void restore_rp(SkCanvas* canvas, SkReader32* reader, uint32_t op32,
 | 
| 
 |