diff options
Diffstat (limited to 'libs/hwui/PathCache.cpp')
-rw-r--r-- | libs/hwui/PathCache.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libs/hwui/PathCache.cpp b/libs/hwui/PathCache.cpp index e09c243..e363b73 100644 --- a/libs/hwui/PathCache.cpp +++ b/libs/hwui/PathCache.cpp @@ -83,6 +83,11 @@ void PathCache::clearGarbage() { } PathTexture* PathCache::get(SkPath* path, SkPaint* paint) { + const SkPath* sourcePath = path->getSourcePath(); + if (sourcePath && sourcePath->getGenerationID() == path->getGenerationID()) { + path = const_cast<SkPath*>(sourcePath); + } + PathCacheEntry entry(path, paint); PathTexture* texture = mCache.get(entry); |