diff options
Diffstat (limited to 'core/jni')
-rw-r--r-- | core/jni/android_hardware_Camera.cpp | 2 | ||||
-rw-r--r-- | core/jni/android_media_AudioRecord.cpp | 4 | ||||
-rw-r--r-- | core/jni/android_view_GLRenderer.cpp | 11 | ||||
-rw-r--r-- | core/jni/android_view_ThreadedRenderer.cpp | 8 |
4 files changed, 22 insertions, 3 deletions
diff --git a/core/jni/android_hardware_Camera.cpp b/core/jni/android_hardware_Camera.cpp index 58b61ba..307293f 100644 --- a/core/jni/android_hardware_Camera.cpp +++ b/core/jni/android_hardware_Camera.cpp @@ -230,7 +230,7 @@ void JNICameraContext::copyAndPost(JNIEnv* env, const sp<IMemory>& dataPtr, int ssize_t offset; size_t size; sp<IMemoryHeap> heap = dataPtr->getMemory(&offset, &size); - ALOGV("copyAndPost: off=%ld, size=%d", offset, size); + ALOGV("copyAndPost: off=%zd, size=%zu", offset, size); uint8_t *heapBase = (uint8_t*)heap->base(); if (heapBase != NULL) { diff --git a/core/jni/android_media_AudioRecord.cpp b/core/jni/android_media_AudioRecord.cpp index 0132b5f..cd0bf53 100644 --- a/core/jni/android_media_AudioRecord.cpp +++ b/core/jni/android_media_AudioRecord.cpp @@ -312,7 +312,7 @@ static void android_media_AudioRecord_release(JNIEnv *env, jobject thiz) { if (lpRecorder == NULL) { return; } - ALOGV("About to delete lpRecorder: %" PRIxPTR "\n", lpRecorder.get()); + ALOGV("About to delete lpRecorder: %p", lpRecorder.get()); lpRecorder->stop(); audiorecord_callback_cookie *lpCookie = (audiorecord_callback_cookie *)env->GetLongField( @@ -325,7 +325,7 @@ static void android_media_AudioRecord_release(JNIEnv *env, jobject thiz) { // delete the callback information if (lpCookie) { Mutex::Autolock l(sLock); - ALOGV("deleting lpCookie: %" PRIxPTR "\n", lpCookie); + ALOGV("deleting lpCookie: %p", lpCookie); while (lpCookie->busy) { if (lpCookie->cond.waitRelative(sLock, milliseconds(CALLBACK_COND_WAIT_TIMEOUT_MS)) != diff --git a/core/jni/android_view_GLRenderer.cpp b/core/jni/android_view_GLRenderer.cpp index e45c1b9..180c625 100644 --- a/core/jni/android_view_GLRenderer.cpp +++ b/core/jni/android_view_GLRenderer.cpp @@ -26,6 +26,8 @@ #include <utils/Timers.h> +#include <private/hwui/DrawGlInfo.h> + #include <Caches.h> #include <Extensions.h> #include <LayerRenderer.h> @@ -155,6 +157,14 @@ static void android_view_GLRenderer_updateRenderNodeProperties(JNIEnv* env, jobj renderNode->updateProperties(); } +static void android_view_GLRenderer_invokeFunctor(JNIEnv* env, jobject clazz, + jlong functorPtr, jboolean hasContext) { + using namespace android::uirenderer; + Functor* functor = reinterpret_cast<Functor*>(functorPtr); + DrawGlInfo::Mode mode = hasContext ? DrawGlInfo::kModeProcess : DrawGlInfo::kModeProcessNoContext; + (*functor)(mode, NULL); +} + #endif // USE_OPENGL_RENDERER // ---------------------------------------------------------------------------- @@ -187,6 +197,7 @@ static JNINativeMethod gMethods[] = { { "nDestroyLayer", "(J)V", (void*) android_view_GLRenderer_destroyLayer }, { "nSetDisplayListData", "(JJ)V", (void*) android_view_GLRenderer_setDisplayListData }, { "nUpdateRenderNodeProperties", "(J)V", (void*) android_view_GLRenderer_updateRenderNodeProperties }, + { "nInvokeFunctor", "(JZ)V", (void*) android_view_GLRenderer_invokeFunctor }, #endif { "setupShadersDiskCache", "(Ljava/lang/String;)V", diff --git a/core/jni/android_view_ThreadedRenderer.cpp b/core/jni/android_view_ThreadedRenderer.cpp index 28cee4b..98bec1b 100644 --- a/core/jni/android_view_ThreadedRenderer.cpp +++ b/core/jni/android_view_ThreadedRenderer.cpp @@ -139,6 +139,13 @@ static void android_view_ThreadedRenderer_detachFunctor(JNIEnv* env, jobject cla proxy->detachFunctor(functor); } +static void android_view_ThreadedRenderer_invokeFunctor(JNIEnv* env, jobject clazz, + jlong proxyPtr, jlong functorPtr, jboolean waitForCompletion) { + RenderProxy* proxy = reinterpret_cast<RenderProxy*>(proxyPtr); + Functor* functor = reinterpret_cast<Functor*>(functorPtr); + proxy->invokeFunctor(functor, waitForCompletion); +} + static void android_view_ThreadedRenderer_runWithGlContext(JNIEnv* env, jobject clazz, jlong proxyPtr, jobject jrunnable) { RenderProxy* proxy = reinterpret_cast<RenderProxy*>(proxyPtr); @@ -196,6 +203,7 @@ static JNINativeMethod gMethods[] = { { "nDestroyCanvas", "(J)V", (void*) android_view_ThreadedRenderer_destroyCanvas }, { "nAttachFunctor", "(JJ)V", (void*) android_view_ThreadedRenderer_attachFunctor }, { "nDetachFunctor", "(JJ)V", (void*) android_view_ThreadedRenderer_detachFunctor }, + { "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 }, { "nCreateTextureLayer", "(J)J", (void*) android_view_ThreadedRenderer_createTextureLayer }, |