summaryrefslogtreecommitdiffstats
path: root/libs
diff options
context:
space:
mode:
authorSamsung <aosp@samsung.com>2014-09-24 10:52:13 -0700
committerSamsung <aosp@samsung.com>2014-09-24 11:10:06 -0700
commite11f3ab000ec8d71e816aea7f266a3ceafebfd56 (patch)
treeac55465ea552a284fb09bc83a99c495c45cd4fa9 /libs
parent8178edfc096e797917257c8cbc715f0a31fe551a (diff)
downloadframeworks_base-e11f3ab000ec8d71e816aea7f266a3ceafebfd56.zip
frameworks_base-e11f3ab000ec8d71e816aea7f266a3ceafebfd56.tar.gz
frameworks_base-e11f3ab000ec8d71e816aea7f266a3ceafebfd56.tar.bz2
Fixing memory leak in RenderBufferCache
In our devices with higher resolution we have observed a memory leak in the HWUI code. When there is GC or tree modification and buffer size is greater than the default size, we make sure buffer is deleted. Change-Id: Idf7052ccaf43c8a784ce0e7bdab336dca29bffd8 Signed-off-by: Samsung <aosp@samsung.com>
Diffstat (limited to 'libs')
-rw-r--r--libs/hwui/RenderBufferCache.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/libs/hwui/RenderBufferCache.cpp b/libs/hwui/RenderBufferCache.cpp
index 830a13a..022820b 100644
--- a/libs/hwui/RenderBufferCache.cpp
+++ b/libs/hwui/RenderBufferCache.cpp
@@ -158,6 +158,11 @@ bool RenderBufferCache::put(RenderBuffer* buffer) {
buffer->getWidth(), buffer->getHeight());
return true;
+ } else {
+ RENDER_BUFFER_LOGD("Deleted %s render buffer (%dx%d) Size=%d, MaxSize=%d",
+ RenderBuffer::formatName(buffer->getFormat()),
+ buffer->getWidth(), buffer->getHeight(), size, mMaxSize);
+ delete buffer;
}
return false;
}