From df72bd0d92ae98ca939562f6398fb9617ab0c758 Mon Sep 17 00:00:00 2001 From: James Willcox Date: Tue, 1 Jul 2014 11:43:27 -0500 Subject: [PATCH] Bug 1032460 - Fix getting JNI EGLSurface for Android L r=blassey --- widget/android/AndroidBridge.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/widget/android/AndroidBridge.cpp b/widget/android/AndroidBridge.cpp index 62c75c869cf2..c54f4214d299 100644 --- a/widget/android/AndroidBridge.cpp +++ b/widget/android/AndroidBridge.cpp @@ -200,7 +200,9 @@ AndroidBridge::Init(JNIEnv *jEnv) jclass eglClass = getClassGlobalRef("com/google/android/gles_jni/EGLSurfaceImpl"); if (eglClass) { - jEGLSurfacePointerField = getField("mEGLSurface", "I"); + // The pointer type moved to a 'long' in Android L, API version 20 + const char* jniType = mAPIVersion >= 20 ? "J" : "I"; + jEGLSurfacePointerField = getField("mEGLSurface", jniType); } else { jEGLSurfacePointerField = 0; }