remove purge more interface from GrTextBlobCache
Change-Id: Ice1b7593ebf9cf38191c180eb56183ffc6167f0b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/299293
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Herb Derby <herb@google.com>
diff --git a/src/gpu/text/GrTextBlobCache.cpp b/src/gpu/text/GrTextBlobCache.cpp
index 8a329c4..988ef81 100644
--- a/src/gpu/text/GrTextBlobCache.cpp
+++ b/src/gpu/text/GrTextBlobCache.cpp
@@ -15,9 +15,8 @@
return msg.fContextID == msgBusUniqueID;
}
-GrTextBlobCache::GrTextBlobCache(PurgeMore purgeMore, uint32_t messageBusID)
- : fPurgeMore(purgeMore)
- , fSizeBudget(kDefaultBudget)
+GrTextBlobCache::GrTextBlobCache(uint32_t messageBusID)
+ : fSizeBudget(kDefaultBudget)
, fMessageBusID(messageBusID)
, fPurgeBlobInbox(messageBusID) { }
@@ -74,12 +73,6 @@
fCurrentSize = 0;
}
-void GrTextBlobCache::setBudget(size_t budget) {
- SkAutoMutexExclusive lock{fMutex};
- fSizeBudget = budget;
- this->internalCheckPurge();
-}
-
void GrTextBlobCache::PostPurgeBlobMessage(uint32_t blobID, uint32_t cacheID) {
SkASSERT(blobID != SK_InvalidGenID);
SkMessageBus<PurgeBlobMessage>::Post(PurgeBlobMessage(blobID, cacheID));
@@ -117,6 +110,11 @@
return fCurrentSize;
}
+bool GrTextBlobCache::isOverBudget() const {
+ SkAutoMutexExclusive lock{fMutex};
+ return fCurrentSize > fSizeBudget;
+}
+
void GrTextBlobCache::internalCheckPurge(GrTextBlob* blob) {
// First, purge all stale blob IDs.
this->internalPurgeStaleBlobs();
@@ -133,13 +131,6 @@
this->internalRemove(lruBlob);
}
- // If we break out of the loop with lruBlob == blob, then we haven't purged enough
- // use the call back and try to free some more. If we are still overbudget after this,
- // then this single textblob is over our budget
- if (blob && lruBlob == blob) {
- fPurgeMore();
- }
-
#ifdef SPEW_BUDGET_MESSAGE
if (fCurrentSize > fSizeBudget) {
SkDebugf("Single textblob is larger than our whole budget");