diff options
author | John Reck <jreck@google.com> | 2014-04-14 11:01:57 -0700 |
---|---|---|
committer | John Reck <jreck@google.com> | 2014-04-14 12:44:53 -0700 |
commit | fae904d63947fe1687d1d44be29234cc3d538f24 (patch) | |
tree | 57837539a3eb84bc5f42f971a041e99db31cfd39 /core/jni | |
parent | db8b130a19484cb6018667905e64d42ab793654f (diff) | |
download | frameworks_base-fae904d63947fe1687d1d44be29234cc3d538f24.zip frameworks_base-fae904d63947fe1687d1d44be29234cc3d538f24.tar.gz frameworks_base-fae904d63947fe1687d1d44be29234cc3d538f24.tar.bz2 |
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
Diffstat (limited to 'core/jni')
-rw-r--r-- | core/jni/android_view_ThreadedRenderer.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/core/jni/android_view_ThreadedRenderer.cpp b/core/jni/android_view_ThreadedRenderer.cpp index 30d3e0c..b5f489d 100644 --- a/core/jni/android_view_ThreadedRenderer.cpp +++ b/core/jni/android_view_ThreadedRenderer.cpp @@ -121,10 +121,10 @@ static void android_view_ThreadedRenderer_drawDisplayList(JNIEnv* env, jobject c proxy->drawDisplayList(displayList, dirtyLeft, dirtyTop, dirtyRight, dirtyBottom); } -static void android_view_ThreadedRenderer_destroyCanvas(JNIEnv* env, jobject clazz, +static void android_view_ThreadedRenderer_destroyCanvasAndSurface(JNIEnv* env, jobject clazz, jlong proxyPtr) { RenderProxy* proxy = reinterpret_cast<RenderProxy*>(proxyPtr); - proxy->destroyCanvas(); + proxy->destroyCanvasAndSurface(); } static void android_view_ThreadedRenderer_invokeFunctor(JNIEnv* env, jobject clazz, @@ -194,7 +194,7 @@ static JNINativeMethod gMethods[] = { { "nPauseSurface", "(JLandroid/view/Surface;)V", (void*) android_view_ThreadedRenderer_pauseSurface }, { "nSetup", "(JII)V", (void*) android_view_ThreadedRenderer_setup }, { "nDrawDisplayList", "(JJIIII)V", (void*) android_view_ThreadedRenderer_drawDisplayList }, - { "nDestroyCanvas", "(J)V", (void*) android_view_ThreadedRenderer_destroyCanvas }, + { "nDestroyCanvasAndSurface", "(J)V", (void*) android_view_ThreadedRenderer_destroyCanvasAndSurface }, { "nInvokeFunctor", "(JJZ)V", (void*) android_view_ThreadedRenderer_invokeFunctor }, { "nRunWithGlContext", "(JLjava/lang/Runnable;)V", (void*) android_view_ThreadedRenderer_runWithGlContext }, { "nCreateDisplayListLayer", "(JII)J", (void*) android_view_ThreadedRenderer_createDisplayListLayer }, |