From fae904d63947fe1687d1d44be29234cc3d538f24 Mon Sep 17 00:00:00 2001 From: John Reck Date: Mon, 14 Apr 2014 11:01:57 -0700 Subject: Fence on destruction Bug: 14052927 destroyCanvasAndSurface() needs a fence as when it returns the underlying BufferQueue is going to be released from under the render thread. Change-Id: I0147a1d5ec5adf0239c761ef22f65cd8c8a137df --- core/java/android/view/ThreadedRenderer.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'core/java/android/view/ThreadedRenderer.java') diff --git a/core/java/android/view/ThreadedRenderer.java b/core/java/android/view/ThreadedRenderer.java index cbb98e1..1429837 100644 --- a/core/java/android/view/ThreadedRenderer.java +++ b/core/java/android/view/ThreadedRenderer.java @@ -67,7 +67,7 @@ public class ThreadedRenderer extends HardwareRenderer { void destroy(boolean full) { mInitialized = false; updateEnabledState(null); - nDestroyCanvas(mNativeProxy); + nDestroyCanvasAndSurface(mNativeProxy); } private void updateEnabledState(Surface surface) { @@ -300,7 +300,7 @@ public class ThreadedRenderer extends HardwareRenderer { private static native void nDrawDisplayList(long nativeProxy, long displayList, int dirtyLeft, int dirtyTop, int dirtyRight, int dirtyBottom); private static native void nRunWithGlContext(long nativeProxy, Runnable runnable); - private static native void nDestroyCanvas(long nativeProxy); + private static native void nDestroyCanvasAndSurface(long nativeProxy); private static native void nInvokeFunctor(long nativeProxy, long functor, boolean waitForCompletion); -- cgit v1.1