From 286a51986a4f32c1bc74a612f5f8081b5edfc63e Mon Sep 17 00:00:00 2001 From: Zhang Rui Date: Thu, 6 Jun 2013 18:09:51 +0800 Subject: [PATCH] jni: ijkplayer: NULL check --- ijkmediaplayer/jni/ijkplayer/ijkplayer_jni.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/ijkmediaplayer/jni/ijkplayer/ijkplayer_jni.c b/ijkmediaplayer/jni/ijkplayer/ijkplayer_jni.c index 7508c0d4..6da779da 100644 --- a/ijkmediaplayer/jni/ijkplayer/ijkplayer_jni.c +++ b/ijkmediaplayer/jni/ijkplayer/ijkplayer_jni.c @@ -44,18 +44,15 @@ typedef struct player_fields_t { } player_fields_t; static player_fields_t g_clazz; -inline static int jni_get_int_fields(JNIEnv* env, jobject thiz, jfieldID field) -{ - return (*env)->GetIntField(env, thiz, field); -} - static IjkMediaPlayer *get_media_player(JNIEnv* env, jobject thiz) { // FIXME: lock ref count pthread_mutex_lock(&g_clazz.mutex); - IjkMediaPlayer *mp = (IjkMediaPlayer *) jni_get_int_fields(env, thiz, g_clazz.mNativeMediaPlayer); - ijkmp_inc_ref(mp); + IjkMediaPlayer *mp = (IjkMediaPlayer *) (*env)->GetLongField(env, thiz, g_clazz.mNativeMediaPlayer); + if (mp) { + ijkmp_inc_ref(mp); + } pthread_mutex_unlock(&g_clazz.mutex); return mp; -- GitLab