aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/java/native/com_libmailcore_IMAPFetchContentOperation.cpp
diff options
context:
space:
mode:
authorGravatar Ahad Birang <farnabaz@gmail.com>2018-12-24 07:29:48 +0330
committerGravatar HoĆ  V. DINH <dinh.viet.hoa@gmail.com>2018-12-23 21:59:48 -0600
commitc4a2e84c3b6dbfd34ecd9d1f44cf032b437139fd (patch)
treeddea40f49f899c769619c784356bb90ba4eb5dca /src/java/native/com_libmailcore_IMAPFetchContentOperation.cpp
parent25aa18c7fbc6d31f8c668a60f96e87544e6a02bc (diff)
Fix Operation Progress Listener on Android (#1787)
* feat(IMAPSession): add support for moveMessagesOpeation to java library * feat: support fieldClass in getObjectField * fix: use global reference of progress listener pass progress values to callback function
Diffstat (limited to 'src/java/native/com_libmailcore_IMAPFetchContentOperation.cpp')
-rw-r--r--src/java/native/com_libmailcore_IMAPFetchContentOperation.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/java/native/com_libmailcore_IMAPFetchContentOperation.cpp b/src/java/native/com_libmailcore_IMAPFetchContentOperation.cpp
index a8be97b8..24d3a090 100644
--- a/src/java/native/com_libmailcore_IMAPFetchContentOperation.cpp
+++ b/src/java/native/com_libmailcore_IMAPFetchContentOperation.cpp
@@ -38,9 +38,10 @@ JNIEXPORT void JNICALL Java_com_libmailcore_IMAPFetchContentOperation_setupNativ
MC_SAFE_RELEASE(callback);
MC_JAVA_NATIVE_INSTANCE->setImapCallback(NULL);
- jobject javaListener = getObjectField(env, obj, "listener");
+ jobject javaListener = getObjectField(env, obj, "listener", "Lcom/libmailcore/IMAPOperationProgressListener;");
if (javaListener != NULL) {
- callback = new JavaIMAPOperationCallback(env, javaListener);
+ jobject c = reinterpret_cast<jobject>(env->NewGlobalRef(javaListener));
+ callback = new JavaIMAPOperationCallback(env, c);
MC_JAVA_NATIVE_INSTANCE->setImapCallback(callback);
}
MC_POOL_END;