Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(189)

Unified Diff: src/gpu/GrClipMaskCache.h

Issue 481443002: Add GrResourceCache2. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: remove removeHead Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/gpu/GrClipMaskCache.h
diff --git a/src/gpu/GrClipMaskCache.h b/src/gpu/GrClipMaskCache.h
index b332c7be9b96e2daf8537344b1527bbdb414492f..c150d11c9fedf8710b387b5f3f52ba38ed777a3b 100644
--- a/src/gpu/GrClipMaskCache.h
+++ b/src/gpu/GrClipMaskCache.h
@@ -41,6 +41,7 @@ public:
// We could reuse the mask if bounds is a subset of last bounds. We'd have to communicate
// an offset to the caller.
if (back->fLastMask.texture() &&
+ !back->fLastMask.texture()->wasDestroyed() &&
back->fLastBound == bounds &&
back->fLastClipGenID == clipGenID) {
return true;
@@ -179,8 +180,8 @@ public:
return fContext;
}
- void releaseResources() {
-
+ // TODO: Remove this when we hold cache keys instead of refs to textures.
+ void purgeResources() {
SkDeque::F2BIter iter(fStack);
for (GrClipStackFrame* frame = (GrClipStackFrame*) iter.next();
frame != NULL;
@@ -219,7 +220,8 @@ private:
int32_t fLastClipGenID;
// The mask's width & height values are used by GrClipMaskManager to correctly scale the
robertphillips 2014/08/15 19:36:17 overlength ?
bsalomon 2014/08/19 15:16:08 Done.
- // texture coords for the geometry drawn with this mask.
+ // texture coords for the geometry drawn with this mask. TODO: This should be a cache key and
+ // not a hard ref to a texture.
GrAutoScratchTexture fLastMask;
// fLastBound stores the bounding box of the clip mask in clip-stack space. This rect is
// used by GrClipMaskManager to position a rect and compute texture coords for the mask.

Powered by Google App Engine
This is Rietveld 408576698