aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Hoa V. Dinh <dinh.viet.hoa@gmail.com>2015-11-06 09:26:27 -0800
committerGravatar Hoa V. Dinh <dinh.viet.hoa@gmail.com>2015-11-06 09:26:27 -0800
commit2e75457a3027663212be199e643c73a9fd419425 (patch)
tree7f9c37766acb0422a2b22ccb65b00f4e00d94ba9
parent6154222f88fe6702906f34ae213282dc198be32a (diff)
Fixed crash on Android
-rw-r--r--src/java/JavaHandle.cpp2
-rw-r--r--src/java/TypesUtils.h2
-rw-r--r--src/java/com/libmailcore/MainThreadUtils.java1
3 files changed, 3 insertions, 2 deletions
diff --git a/src/java/JavaHandle.cpp b/src/java/JavaHandle.cpp
index 4f02323e..1bf799e3 100644
--- a/src/java/JavaHandle.cpp
+++ b/src/java/JavaHandle.cpp
@@ -21,7 +21,7 @@ void * mailcore::getHandle(JNIEnv * env, jobject obj)
void mailcore::setHandle(JNIEnv *env, jobject obj, void *t)
{
- jlong handle = reinterpret_cast<jlong>(t);
+ jlong handle = (jlong) t;
env->SetLongField(obj, getHandleField(env, obj), handle);
}
diff --git a/src/java/TypesUtils.h b/src/java/TypesUtils.h
index c0087a46..7ffb9d5e 100644
--- a/src/java/TypesUtils.h
+++ b/src/java/TypesUtils.h
@@ -106,7 +106,7 @@
{ \
jclass cls = env->FindClass("com/libmailcore/" mc_expand_and_quote(javaType)); \
jmethodID constructor = env->GetMethodID(cls, "initWithNative", "(J)V"); \
- jobject javaObject = env->NewObject(cls, constructor, obj); \
+ jobject javaObject = env->NewObject(cls, constructor, (jlong) obj); \
return javaObject; \
} \
\
diff --git a/src/java/com/libmailcore/MainThreadUtils.java b/src/java/com/libmailcore/MainThreadUtils.java
index 97327d7a..3d1a2d9e 100644
--- a/src/java/com/libmailcore/MainThreadUtils.java
+++ b/src/java/com/libmailcore/MainThreadUtils.java
@@ -17,6 +17,7 @@ class MainThreadUtils {
// private constructor
private MainThreadUtils() {
System.loadLibrary("MailCore");
+ System.loadLibrary("c++_shared");
handler = new Handler(Looper.getMainLooper());
setupNative();
}