diff options
author | Tobias Brunner <tobias@strongswan.org> | 2012-08-28 15:29:35 +0200 |
---|---|---|
committer | Tobias Brunner <tobias@strongswan.org> | 2012-08-31 18:24:45 +0200 |
commit | 655362464e4fd0da6adca2abe044b59f15c592a6 (patch) | |
tree | 3a13bb5a60567188e096704ea0eb44ae26bedee2 | |
parent | 6de38fe88aac4706dd9f2b7377695e4ae8c5d6bd (diff) | |
download | strongswan-655362464e4fd0da6adca2abe044b59f15c592a6.tar.bz2 strongswan-655362464e4fd0da6adca2abe044b59f15c592a6.tar.xz |
android: Make sure NULL jstrings are converted properly
-rw-r--r-- | src/frontends/android/jni/libandroidbridge/android_jni.h | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/frontends/android/jni/libandroidbridge/android_jni.h b/src/frontends/android/jni/libandroidbridge/android_jni.h index 774d37d7e..bafd6b72e 100644 --- a/src/frontends/android/jni/libandroidbridge/android_jni.h +++ b/src/frontends/android/jni/libandroidbridge/android_jni.h @@ -90,13 +90,16 @@ static inline bool androidjni_exception_occurred(JNIEnv *env) */ static inline char *androidjni_convert_jstring(JNIEnv *env, jstring jstr) { - char *str; + char *str = NULL; jsize len; - len = (*env)->GetStringUTFLength(env, jstr); - str = malloc(len + 1); - (*env)->GetStringUTFRegion(env, jstr, 0, len, str); - str[len] = '\0'; + if (jstr) + { + len = (*env)->GetStringUTFLength(env, jstr); + str = malloc(len + 1); + (*env)->GetStringUTFRegion(env, jstr, 0, len, str); + str[len] = '\0'; + } return str; } |