summaryrefslogtreecommitdiffstats
path: root/core/jni/android_os_MessageQueue.cpp
diff options
context:
space:
mode:
authorAndreas Gampe <agampe@google.com>2014-11-18 17:29:46 -0800
committerAndreas Gampe <agampe@google.com>2014-11-19 09:21:12 -0800
commit987f79f60bb1f0a4bcd3ef22e57301c743f0b94f (patch)
tree0ca0916dade98039096346937279ee3587353ede /core/jni/android_os_MessageQueue.cpp
parent8462913d0c19973901a861749b4abbaacdf4b477 (diff)
downloadframeworks_base-987f79f60bb1f0a4bcd3ef22e57301c743f0b94f.zip
frameworks_base-987f79f60bb1f0a4bcd3ef22e57301c743f0b94f.tar.gz
frameworks_base-987f79f60bb1f0a4bcd3ef22e57301c743f0b94f.tar.bz2
Frameworks/base: Replace LOG_FATAL_IF in core/jni
Do not use LOG_FATAL_IF in JNI setup. This is one-time on startup and important enough to always check. Add a header with common helper definitions. Move to inlined functions instead of macros to clean up the code. Change-Id: Ib12d0eed61b110c45d748e80ec36c563e9dec7e5
Diffstat (limited to 'core/jni/android_os_MessageQueue.cpp')
-rw-r--r--core/jni/android_os_MessageQueue.cpp28
1 files changed, 9 insertions, 19 deletions
diff --git a/core/jni/android_os_MessageQueue.cpp b/core/jni/android_os_MessageQueue.cpp
index 96a3e37..5d7877b 100644
--- a/core/jni/android_os_MessageQueue.cpp
+++ b/core/jni/android_os_MessageQueue.cpp
@@ -23,6 +23,8 @@
#include <utils/Log.h>
#include "android_os_MessageQueue.h"
+#include "core_jni_helpers.h"
+
namespace android {
static struct {
@@ -157,27 +159,15 @@ static JNINativeMethod gMessageQueueMethods[] = {
{ "nativeIsIdling", "(J)Z", (void*)android_os_MessageQueue_nativeIsIdling }
};
-#define FIND_CLASS(var, className) \
- var = env->FindClass(className); \
- LOG_FATAL_IF(! var, "Unable to find class " className);
+int register_android_os_MessageQueue(JNIEnv* env) {
+ int res = RegisterMethodsOrDie(env, "android/os/MessageQueue", gMessageQueueMethods,
+ NELEM(gMessageQueueMethods));
+
+ jclass clazz = FindClassOrDie(env, "android/os/MessageQueue");
-#define GET_FIELD_ID(var, clazz, fieldName, fieldDescriptor) \
- var = env->GetFieldID(clazz, fieldName, fieldDescriptor); \
- LOG_FATAL_IF(! var, "Unable to find field " fieldName);
+ gMessageQueueClassInfo.mPtr = GetFieldIDOrDie(env, clazz, "mPtr", "J");
-int register_android_os_MessageQueue(JNIEnv* env) {
- int res = jniRegisterNativeMethods(env, "android/os/MessageQueue",
- gMessageQueueMethods, NELEM(gMessageQueueMethods));
- LOG_FATAL_IF(res < 0, "Unable to register native methods.");
- (void)res;
-
- jclass clazz;
- FIND_CLASS(clazz, "android/os/MessageQueue");
-
- GET_FIELD_ID(gMessageQueueClassInfo.mPtr, clazz,
- "mPtr", "J");
-
- return 0;
+ return res;
}
} // namespace android