diff options
author | robertphillips <robertphillips@google.com> | 2014-10-29 08:05:21 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-10-29 08:05:21 -0700 |
commit | 6d5b5455743414ddb11d2b8c1fe9d7959f2b853d (patch) | |
tree | d93832b6b22fd657e5c1a18ffcb768c75a421e7c /src/core/SkMultiPictureDraw.cpp | |
parent | 5abfa688b7beafaecbfbdbc76677344f78394f4b (diff) |
Discard atlas after every MultiPictureDraw::draw
This is intended to prevent ghosting on tiled architectures.
This CL also defers creation of the atlas (and its texture) until it is actually needed.
Review URL: https://codereview.chromium.org/678403002
Diffstat (limited to 'src/core/SkMultiPictureDraw.cpp')
-rw-r--r-- | src/core/SkMultiPictureDraw.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/core/SkMultiPictureDraw.cpp b/src/core/SkMultiPictureDraw.cpp index 5fe3c0ea52..7d6639b4df 100644 --- a/src/core/SkMultiPictureDraw.cpp +++ b/src/core/SkMultiPictureDraw.cpp @@ -146,6 +146,9 @@ void SkMultiPictureDraw::draw() { if (NULL != context) { GrLayerHoister::UnlockLayers(context, atlasedNeedRendering); GrLayerHoister::UnlockLayers(context, atlasedRecycled); +#if !GR_CACHE_HOISTED_LAYERS + GrLayerHoister::PurgeCache(context); +#endif } #endif |