summaryrefslogtreecommitdiffstats
path: root/libs/hwui/DisplayListRenderer.h
diff options
context:
space:
mode:
authorRomain Guy <romainguy@google.com>2012-03-05 13:44:35 -0800
committerRomain Guy <romainguy@google.com>2012-03-05 13:44:35 -0800
commitbb0acdf9e1d862a7cf0e2533321fc1105c29b5e3 (patch)
treefbf7facb0b3e3c704ded07219bd7829cded40142 /libs/hwui/DisplayListRenderer.h
parentfb9c41c2060497a459d16c30122e1d082895e5d1 (diff)
downloadframeworks_base-bb0acdf9e1d862a7cf0e2533321fc1105c29b5e3.zip
frameworks_base-bb0acdf9e1d862a7cf0e2533321fc1105c29b5e3.tar.gz
frameworks_base-bb0acdf9e1d862a7cf0e2533321fc1105c29b5e3.tar.bz2
Delete display list objects and resources on the UI thread
Bug #6073717 Bug #6065504 Bug #6026515 Bug #5971725 Prior to this patch, the destructor of DisplayList would always run on the finalizer thread. This could cause a race condition if the UI thread was busy rendering display lists at the same time leading to various random native crashes. Change-Id: Ie11108e3b1538d4b358a1a8b4cce1b2d33152d0c
Diffstat (limited to 'libs/hwui/DisplayListRenderer.h')
-rw-r--r--libs/hwui/DisplayListRenderer.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/libs/hwui/DisplayListRenderer.h b/libs/hwui/DisplayListRenderer.h
index 96b87cc..02f8438 100644
--- a/libs/hwui/DisplayListRenderer.h
+++ b/libs/hwui/DisplayListRenderer.h
@@ -119,16 +119,16 @@ public:
static const char* OP_NAMES[];
- void initFromDisplayListRenderer(const DisplayListRenderer& recorder, bool reusing = false);
-
ANDROID_API size_t getSize();
+ ANDROID_API static void destroyDisplayListDeferred(DisplayList* displayList);
+ ANDROID_API static void outputLogBuffer(int fd);
+
+ void initFromDisplayListRenderer(const DisplayListRenderer& recorder, bool reusing = false);
bool replay(OpenGLRenderer& renderer, Rect& dirty, int32_t flags, uint32_t level = 0);
void output(OpenGLRenderer& renderer, uint32_t level = 0);
- ANDROID_API static void outputLogBuffer(int fd);
-
void setRenderable(bool renderable) {
mIsRenderable = renderable;
}