diff options
author | martin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2012-02-06 22:03:13 +0000 |
---|---|---|
committer | martin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2012-02-06 22:03:13 +0000 |
commit | 705290c5e6b3f80811051b597686def2b900ca53 (patch) | |
tree | ed0ff1d1d561758a0ff5de628e8f776993c1fe68 /navit/android.c | |
parent | ce3462999e09f133454fc84bf79e8c9f8c465bd2 (diff) | |
download | navit-705290c5e6b3f80811051b597686def2b900ca53.tar.gz |
Add:android:Made watches more flexible
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@4929 ffa7fe5e-494d-0410-b361-a75ebd5db220
Diffstat (limited to 'navit/android.c')
-rw-r--r-- | navit/android.c | 24 |
1 files changed, 4 insertions, 20 deletions
diff --git a/navit/android.c b/navit/android.c index eec4005a8..1107f600c 100644 --- a/navit/android.c +++ b/navit/android.c @@ -1,6 +1,5 @@ #include <stdlib.h> #include <string.h> -#include <poll.h> #include <glib.h> #include "android.h" #include <android/log.h> @@ -142,26 +141,11 @@ Java_org_navitproject_navit_NavitIdle_IdleCallback( JNIEnv* env, jobject thiz, i } JNIEXPORT void JNICALL -Java_org_navitproject_navit_NavitWatch_poll( JNIEnv* env, jobject thiz, int fd, int cond) +Java_org_navitproject_navit_NavitWatch_poll( JNIEnv* env, jobject thiz, int func, int fd, int cond) { - struct pollfd pfd; - pfd.fd=fd; - dbg(1,"%p poll called for %d %d\n",env, fd, cond); - switch ((enum event_watch_cond)cond) { - case event_watch_cond_read: - pfd.events=POLLIN; - break; - case event_watch_cond_write: - pfd.events=POLLOUT; - break; - case event_watch_cond_except: - pfd.events=POLLERR; - break; - default: - pfd.events=0; - } - pfd.revents=0; - poll(&pfd, 1, -1); + void (*pollfunc)(JNIEnv *env, int fd, int cond)=(void *)func; + + pollfunc(env, fd, cond); } JNIEXPORT void JNICALL |