summaryrefslogtreecommitdiff
path: root/opengl
diff options
context:
space:
mode:
authorCourtney Goeltzenleuchter <courtneygo@google.com>2019-04-03 17:30:40 -0600
committerCourtney Goeltzenleuchter <courtneygo@google.com>2019-04-04 11:02:54 -0600
commit43ef0c3d9b8fc909d45479fa92f2f91240309a81 (patch)
treebd016b499af6f97d1ffb8dc6aa5a75542994ae39 /opengl
parentdd07ae579c291a2b6ffe09bd576fd908eb9e5ddd (diff)
downloadbase-43ef0c3d9b8fc909d45479fa92f2f91240309a81.tar.gz
EGLAttrib requires special handling in JNI
EGLAttrib is defined for a C / C++ interface and is intended to be the size of a pointer. That can change depending on which abi the code is built for but Java doesn't have a way of dealing with such types. Java defines EGLAttrib as a jlong, so need to convert jlong to 32bit when running on a 32bit device. Bug: 124382141 Test: atest --all-abi CtsGraphicsTestCases:EGL15Test Change-Id: I966f6a3716b2710e17d10e0d0cb58314853675e0
Diffstat (limited to 'opengl')
-rw-r--r--opengl/java/android/opengl/EGL15.java23
1 files changed, 13 insertions, 10 deletions
diff --git a/opengl/java/android/opengl/EGL15.java b/opengl/java/android/opengl/EGL15.java
index bd845e7ec1a0..93acc674a4b7 100644
--- a/opengl/java/android/opengl/EGL15.java
+++ b/opengl/java/android/opengl/EGL15.java
@@ -85,6 +85,19 @@ public final class EGL15 {
int offset
);
+ /**
+ * C function EGLBoolean eglGetSyncAttrib ( EGLDisplay dpy, EGLSync sync, EGLint attribute,
+ * EGLAttrib *value )
+ */
+
+ public static native boolean eglGetSyncAttrib(
+ EGLDisplay dpy,
+ EGLSync sync,
+ int attribute,
+ long[] value,
+ int offset
+ );
+
// C function EGLBoolean eglDestroySync ( EGLDisplay dpy, EGLSync sync )
public static native boolean eglDestroySync(
@@ -101,16 +114,6 @@ public final class EGL15 {
long timeout
);
- // C function EGLBoolean eglGetSyncAttrib ( EGLDisplay dpy, EGLSync sync, EGLint attribute, EGLAttrib *value )
-
- public static native boolean eglGetSyncAttrib(
- EGLDisplay dpy,
- EGLSync sync,
- int attribute,
- long[] value,
- int offset
- );
-
// C function EGLDisplay eglGetPlatformDisplay ( EGLenum platform, EGLAttrib native_display, const EGLAttrib *attrib_list )
public static native EGLDisplay eglGetPlatformDisplay(