diff --git a/core/jni/android_view_Surface.cpp b/core/jni/android_view_Surface.cpp index bd2e6694f3f57..9f1b1fd681972 100644 --- a/core/jni/android_view_Surface.cpp +++ b/core/jni/android_view_Surface.cpp @@ -378,7 +378,7 @@ static void Surface_unlockCanvasAndPost( JNIEnv* env, jobject clazz, jobject argCanvas) { jobject canvas = env->GetObjectField(clazz, so.canvas); - if (canvas != argCanvas) { + if (env->IsSameObject(canvas, argCanvas) == JNI_FALSE) { doThrow(env, "java/lang/IllegalArgumentException", NULL); return; }