From: Martin Vajnar Date: Fri, 13 Sep 2013 10:08:23 +0000 (+0200) Subject: JORTE: fix incompatible pointer type compiler warnings X-Git-Tag: v0.3.4~38 X-Git-Url: https://rtime.felk.cvut.cz/gitweb/orte.git/commitdiff_plain/944ad6b0b14b96fc11a82b2b1ce8e6d257bca4e1 JORTE: fix incompatible pointer type compiler warnings Android's AttachCurrentThread() implementation differs from Oracle's. In Android the prototype is: jint (*AttachCurrentThread)(JavaVM*, JNIEnv**, void*); In Oracle's Java: jint (JNICALL *AttachCurrentThread)(JavaVM *vm, void **penv, void *args); Android expects JNIEnv** pointer, whereas Java expects void** pointer to per thread environment structure. --- diff --git a/orte/libjorte/JORTEDomainEvents.c b/orte/libjorte/JORTEDomainEvents.c index 1a75046..1241d7b 100644 --- a/orte/libjorte/JORTEDomainEvents.c +++ b/orte/libjorte/JORTEDomainEvents.c @@ -37,7 +37,13 @@ onRegFail(void *param) } jvm = domain_events_cont->jvm; // get env - (*jvm)->AttachCurrentThread(jvm, (void **)&env, NULL); + (*jvm)->AttachCurrentThread(jvm, + #ifdef __ANDROID__ + &env, + #else + (void **)&env, + #endif + NULL); if(env == 0) { #ifdef TEST_STAGE @@ -119,7 +125,13 @@ onMgrNew(const struct ORTEAppInfo *appInfo, void *param) } jvm = domain_events_cont->jvm; // get env - (*jvm)->AttachCurrentThread(jvm, (void **)&env, NULL); + (*jvm)->AttachCurrentThread(jvm, + #ifdef __ANDROID__ + &env, + #else + (void **)&env, + #endif + NULL); if(env == 0) { #ifdef TEST_STAGE @@ -211,7 +223,13 @@ onMgrDelete(const struct ORTEAppInfo *appInfo, void *param) } jvm = domain_events_cont->jvm; // get env - (*jvm)->AttachCurrentThread(jvm, (void **)&env, NULL); + (*jvm)->AttachCurrentThread(jvm, + #ifdef __ANDROID__ + &env, + #else + (void **)&env, + #endif + NULL); if(env == 0) { #ifdef TEST_STAGE @@ -304,7 +322,13 @@ onAppRemoteNew(const struct ORTEAppInfo *appInfo, void *param) } jvm = domain_events_cont->jvm; // get env - (*jvm)->AttachCurrentThread(jvm, (void **)&env, NULL); + (*jvm)->AttachCurrentThread(jvm, + #ifdef __ANDROID__ + &env, + #else + (void **)&env, + #endif + NULL); if(env == 0) { #ifdef TEST_STAGE @@ -397,7 +421,13 @@ onAppDelete(const struct ORTEAppInfo *appInfo, void *param) } jvm = domain_events_cont->jvm; // get env - (*jvm)->AttachCurrentThread(jvm, (void **)&env, NULL); + (*jvm)->AttachCurrentThread(jvm, + #ifdef __ANDROID__ + &env, + #else + (void **)&env, + #endif + NULL); if(env == 0) { #ifdef TEST_STAGE @@ -492,7 +522,13 @@ onPubRemoteNew(const struct ORTEAppInfo *appInfo, } jvm = domain_events_cont->jvm; // get env - (*jvm)->AttachCurrentThread(jvm, (void **)&env, NULL); + (*jvm)->AttachCurrentThread(jvm, + #ifdef __ANDROID__ + &env, + #else + (void **)&env, + #endif + NULL); if(env == 0) { #ifdef TEST_STAGE @@ -597,7 +633,13 @@ onPubRemoteChanged(const struct ORTEAppInfo *appInfo, } jvm = domain_events_cont->jvm; // get env - (*jvm)->AttachCurrentThread(jvm, (void **)&env, NULL); + (*jvm)->AttachCurrentThread(jvm, + #ifdef __ANDROID__ + &env, + #else + (void **)&env, + #endif + NULL); if(env == 0) { #ifdef TEST_STAGE @@ -704,7 +746,13 @@ onPubDelete(const struct ORTEAppInfo *appInfo, } jvm = domain_events_cont->jvm; // get env - (*jvm)->AttachCurrentThread(jvm, (void **)&env, NULL); + (*jvm)->AttachCurrentThread(jvm, + #ifdef __ANDROID__ + &env, + #else + (void **)&env, + #endif + NULL); if(env == 0) { #ifdef TEST_STAGE @@ -809,7 +857,13 @@ onSubRemoteNew(const struct ORTEAppInfo *appInfo, } jvm = domain_events_cont->jvm; // get env - (*jvm)->AttachCurrentThread(jvm, (void **)&env, NULL); + (*jvm)->AttachCurrentThread(jvm, + #ifdef __ANDROID__ + &env, + #else + (void **)&env, + #endif + NULL); if(env == 0) { #ifdef TEST_STAGE @@ -914,7 +968,13 @@ onSubRemoteChanged(const struct ORTEAppInfo *appInfo, } jvm = domain_events_cont->jvm; // get env - (*jvm)->AttachCurrentThread(jvm, (void **)&env, NULL); + (*jvm)->AttachCurrentThread(jvm, + #ifdef __ANDROID__ + &env, + #else + (void **)&env, + #endif + NULL); if(env == 0) { #ifdef TEST_STAGE @@ -1019,7 +1079,13 @@ onSubDelete(const struct ORTEAppInfo *appInfo, } jvm = domain_events_cont->jvm; // get env - (*jvm)->AttachCurrentThread(jvm, (void **)&env, NULL); + (*jvm)->AttachCurrentThread(jvm, + #ifdef __ANDROID__ + &env, + #else + (void **)&env, + #endif + NULL); if(env == 0) { #ifdef TEST_STAGE @@ -1086,4 +1152,4 @@ onSubDelete(const struct ORTEAppInfo *appInfo, } return ORTE_TRUE; -} \ No newline at end of file +} diff --git a/orte/libjorte/JORTESubscriptionCreate.c b/orte/libjorte/JORTESubscriptionCreate.c index 599f9c8..b02edea 100644 --- a/orte/libjorte/JORTESubscriptionCreate.c +++ b/orte/libjorte/JORTESubscriptionCreate.c @@ -76,7 +76,13 @@ recvCallBack(const ORTERecvInfo *info,void *vinstance, void *recvCallBackParam) } jvm = callback_cont->jvm; // get env - (*jvm)->AttachCurrentThread(jvm, (void **)&env, NULL); + (*jvm)->AttachCurrentThread(jvm, + #ifdef __ANDROID__ + &env, + #else + (void **)&env, + #endif + NULL); if(env == 0) { #ifdef TEST_STAGE