summaryrefslogtreecommitdiff
path: root/libs/hwui/ResourceCache.cpp
diff options
context:
space:
mode:
author Romain Guy <romainguy@google.com> 2012-09-25 15:49:03 -0700
committer Romain Guy <romainguy@google.com> 2012-09-25 15:49:03 -0700
commit8a1374946a928fcba7495c87ff6adda327fdfb9f (patch)
treeab6b1d092aec1b19751e820c3e18a10c21a40759 /libs/hwui/ResourceCache.cpp
parent1ab8a08a9b85aa62045a6a78fd93859382c88b0f (diff)
Deleting objects on the wrong thread is a silly idea
Bug #7195815 Turns out that multi-threading is hard. Change-Id: Ib0b4bd6dc3caea27f7ced22cbb363bb955fe58ab
Diffstat (limited to 'libs/hwui/ResourceCache.cpp')
-rw-r--r--libs/hwui/ResourceCache.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/libs/hwui/ResourceCache.cpp b/libs/hwui/ResourceCache.cpp
index 18d8324b8488..39e64bce9c24 100644
--- a/libs/hwui/ResourceCache.cpp
+++ b/libs/hwui/ResourceCache.cpp
@@ -325,9 +325,9 @@ void ResourceCache::deleteResourceReferenceLocked(void* resource, ResourceRefere
}
break;
case kLayer: {
- Layer* layer = (Layer*) resource;
- layer->freeResourcesLocked();
- delete layer;
+ // No need to check for hasInstance, layers only exist
+ // when we have a Caches instance
+ Caches::getInstance().deleteLayerDeferred((Layer*) resource);
}
break;
}