| Index: src/core/SkRecordOpts.cpp
|
| diff --git a/src/core/SkRecordOpts.cpp b/src/core/SkRecordOpts.cpp
|
| index d1520adf561cdc0066e72bae863bc42a343e7dd4..2310e657d0321356083f9cc71c625fc04463a711 100644
|
| --- a/src/core/SkRecordOpts.cpp
|
| +++ b/src/core/SkRecordOpts.cpp
|
| @@ -177,6 +177,11 @@ struct SaveLayerDrawRestoreNooper {
|
| typedef Pattern<Is<SaveLayer>, IsDraw, Is<Restore>> Match;
|
|
|
| bool onMatch(SkRecord* record, Match* match, int begin, int end) {
|
| + if (match->first<SaveLayer>()->backdrop) {
|
| + // can't throw away the layer if we have a backdrop
|
| + return false;
|
| + }
|
| +
|
| // A SaveLayer's bounds field is just a hint, so we should be free to ignore it.
|
| SkPaint* layerPaint = match->first<SaveLayer>()->paint;
|
| if (nullptr == layerPaint) {
|
|
|