https://bugzilla.mozilla.org/show_bug.cgi?id=1032460 diff -ru icecat-31.4.0.orig/widget/android/AndroidBridge.cpp icecat-31.4.0/widget/android/AndroidBridge.cpp --- icecat-31.4.0.orig/widget/android/AndroidBridge.cpp 2015-02-22 19:11:11.834816575 +0100 +++ icecat-31.4.0/widget/android/AndroidBridge.cpp 2015-02-22 19:16:16.226810788 +0100 @@ -199,7 +199,9 @@ 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; }