diff options
author | Jeff Brown <jeffbrown@google.com> | 2010-10-07 13:29:56 -0700 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2010-10-07 13:29:56 -0700 |
commit | d577cfd73a223279f9a5af698f55edd38a3fe4db (patch) | |
tree | 30533a98b61ae7846db76ff39c91f73980ffda2e /core/jni | |
parent | 949f7d9066e09768e570686a5695aaba4a1dafd0 (diff) | |
parent | 415d8c38199e258dfce92cdb0c69e056b3b51ef8 (diff) | |
download | frameworks_base-d577cfd73a223279f9a5af698f55edd38a3fe4db.zip frameworks_base-d577cfd73a223279f9a5af698f55edd38a3fe4db.tar.gz frameworks_base-d577cfd73a223279f9a5af698f55edd38a3fe4db.tar.bz2 |
Merge "Switch Looper back to using poll() instead of epoll()." into gingerbread
Diffstat (limited to 'core/jni')
-rw-r--r-- | core/jni/android_os_MessageQueue.cpp | 32 |
1 files changed, 11 insertions, 21 deletions
diff --git a/core/jni/android_os_MessageQueue.cpp b/core/jni/android_os_MessageQueue.cpp index 1b203ca..d2e5462 100644 --- a/core/jni/android_os_MessageQueue.cpp +++ b/core/jni/android_os_MessageQueue.cpp @@ -41,7 +41,7 @@ public: inline sp<Looper> getLooper() { return mLooper; } - bool pollOnce(int timeoutMillis); + void pollOnce(int timeoutMillis); void wake(); private: @@ -61,8 +61,8 @@ NativeMessageQueue::NativeMessageQueue() { NativeMessageQueue::~NativeMessageQueue() { } -bool NativeMessageQueue::pollOnce(int timeoutMillis) { - return mLooper->pollOnce(timeoutMillis) != ALOOPER_POLL_TIMEOUT; +void NativeMessageQueue::pollOnce(int timeoutMillis) { + mLooper->pollOnce(timeoutMillis); } void NativeMessageQueue::wake() { @@ -112,24 +112,14 @@ static void throwQueueNotInitialized(JNIEnv* env) { jniThrowException(env, "java/lang/IllegalStateException", "Message queue not initialized"); } -static jboolean android_os_MessageQueue_nativePollOnce(JNIEnv* env, jobject obj, - jint timeoutMillis) { - NativeMessageQueue* nativeMessageQueue = - android_os_MessageQueue_getNativeMessageQueue(env, obj); - if (! nativeMessageQueue) { - throwQueueNotInitialized(env); - return false; - } - return nativeMessageQueue->pollOnce(timeoutMillis); +static void android_os_MessageQueue_nativePollOnce(JNIEnv* env, jobject obj, + jint ptr, jint timeoutMillis) { + NativeMessageQueue* nativeMessageQueue = reinterpret_cast<NativeMessageQueue*>(ptr); + nativeMessageQueue->pollOnce(timeoutMillis); } -static void android_os_MessageQueue_nativeWake(JNIEnv* env, jobject obj) { - NativeMessageQueue* nativeMessageQueue = - android_os_MessageQueue_getNativeMessageQueue(env, obj); - if (! nativeMessageQueue) { - throwQueueNotInitialized(env); - return; - } +static void android_os_MessageQueue_nativeWake(JNIEnv* env, jobject obj, jint ptr) { + NativeMessageQueue* nativeMessageQueue = reinterpret_cast<NativeMessageQueue*>(ptr); return nativeMessageQueue->wake(); } @@ -139,8 +129,8 @@ static JNINativeMethod gMessageQueueMethods[] = { /* name, signature, funcPtr */ { "nativeInit", "()V", (void*)android_os_MessageQueue_nativeInit }, { "nativeDestroy", "()V", (void*)android_os_MessageQueue_nativeDestroy }, - { "nativePollOnce", "(I)Z", (void*)android_os_MessageQueue_nativePollOnce }, - { "nativeWake", "()V", (void*)android_os_MessageQueue_nativeWake } + { "nativePollOnce", "(II)V", (void*)android_os_MessageQueue_nativePollOnce }, + { "nativeWake", "(I)V", (void*)android_os_MessageQueue_nativeWake } }; #define FIND_CLASS(var, className) \ |