diff --git a/src/gpu/ResourceCache.cpp b/src/gpu/ResourceCache.cpp index 1d24a712..4066aa76 100644 --- a/src/gpu/ResourceCache.cpp +++ b/src/gpu/ResourceCache.cpp @@ -230,7 +230,7 @@ void ResourceCache::processUnreferencedResources() { auto currentTime = std::chrono::steady_clock::now(); for (auto& resource : needToPurge) { RemoveFromList(nonpurgeableResources, resource); - if (!resource->scratchKey.empty()) { + if (!resource->scratchKey.empty() || resource->hasExternalReferences()) { AddToList(purgeableResources, resource); purgeableBytes += resource->memoryUsage(); resource->lastUsedTime = currentTime;