aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorandroid-build-team Robot <android-build-team-robot@google.com>2018-05-09 18:59:53 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2018-05-09 18:59:53 +0000
commit691b44d51b02a1b4fc6fd00605e5dd6098d217b9 (patch)
treee453d27ad98ff75479119f7596aea9cc859d4dc4
parent1c5fc443b2fd9cba76a4c0424c491e491764db78 (diff)
parent794b7971fa1e293633ba0fafcbd3df6c97e1a5b6 (diff)
downloaddevice_generic_goldfish-opengl-691b44d51b02a1b4fc6fd00605e5dd6098d217b9.tar.gz
device_generic_goldfish-opengl-691b44d51b02a1b4fc6fd00605e5dd6098d217b9.tar.bz2
device_generic_goldfish-opengl-691b44d51b02a1b4fc6fd00605e5dd6098d217b9.zip
Merge "Fix EGL image regressions in CTS dEQP" into pi-dev
-rw-r--r--system/GLESv1/gl.cpp30
-rw-r--r--system/GLESv2/gl2.cpp28
2 files changed, 34 insertions, 24 deletions
diff --git a/system/GLESv1/gl.cpp b/system/GLESv1/gl.cpp
index 2020a725..6e07004e 100644
--- a/system/GLESv1/gl.cpp
+++ b/system/GLESv1/gl.cpp
@@ -86,27 +86,31 @@ void glEGLImageTargetTexture2DOES(void * self, GLenum target, GLeglImageOES img)
}
}
-void glEGLImageTargetRenderbufferStorageOES(void *self, GLenum target, GLeglImageOES image)
+void glEGLImageTargetRenderbufferStorageOES(void *self, GLenum target, GLeglImageOES img)
{
(void)self;
(void)target;
- DBG("glEGLImageTargetRenderbufferStorageOES v1 target=%#x image=%p",
- target, image);
+ DBG("glEGLImageTargetRenderbufferStorageOES v1 image=%p\n", img);
//TODO: check error - we don't have a way to set gl error
- android_native_buffer_t* native_buffer = ((EGLImage_t*)image)->native_buffer;
+ EGLImage_t *image = (EGLImage_t*)img;
- if (native_buffer->common.magic != ANDROID_NATIVE_BUFFER_MAGIC) {
- return;
- }
+ if (image->target == EGL_NATIVE_BUFFER_ANDROID) {
+ android_native_buffer_t* native_buffer = ((EGLImage_t*)image)->native_buffer;
- if (native_buffer->common.version != sizeof(android_native_buffer_t)) {
- return;
- }
+ if (native_buffer->common.magic != ANDROID_NATIVE_BUFFER_MAGIC) {
+ return;
+ }
- DEFINE_AND_VALIDATE_HOST_CONNECTION();
- rcEnc->rcBindRenderbuffer(rcEnc,
- ((cb_handle_t *)(native_buffer->handle))->hostHandle);
+ if (native_buffer->common.version != sizeof(android_native_buffer_t)) {
+ return;
+ }
+
+ DEFINE_AND_VALIDATE_HOST_CONNECTION();
+ rcEnc->rcBindRenderbuffer(rcEnc, ((cb_handle_t *)(native_buffer->handle))->hostHandle);
+ } else {
+ //TODO
+ }
return;
}
diff --git a/system/GLESv2/gl2.cpp b/system/GLESv2/gl2.cpp
index 283bd95f..331da78a 100644
--- a/system/GLESv2/gl2.cpp
+++ b/system/GLESv2/gl2.cpp
@@ -88,25 +88,31 @@ void glEGLImageTargetTexture2DOES(void * self, GLenum target, GLeglImageOES img)
}
}
-void glEGLImageTargetRenderbufferStorageOES(void *self, GLenum target, GLeglImageOES image)
+void glEGLImageTargetRenderbufferStorageOES(void *self, GLenum target, GLeglImageOES img)
{
(void)self;
(void)target;
- DBG("glEGLImageTargetRenderbufferStorageOES v2 image=%p\n", image);
+ DBG("glEGLImageTargetRenderbufferStorageOES v2 image=%p\n", img);
//TODO: check error - we don't have a way to set gl error
- android_native_buffer_t* native_buffer = ((EGLImage_t*)image)->native_buffer;
+ EGLImage_t *image = (EGLImage_t*)img;
- if (native_buffer->common.magic != ANDROID_NATIVE_BUFFER_MAGIC) {
- return;
- }
+ if (image->target == EGL_NATIVE_BUFFER_ANDROID) {
+ android_native_buffer_t* native_buffer = ((EGLImage_t*)image)->native_buffer;
- if (native_buffer->common.version != sizeof(android_native_buffer_t)) {
- return;
- }
+ if (native_buffer->common.magic != ANDROID_NATIVE_BUFFER_MAGIC) {
+ return;
+ }
- DEFINE_AND_VALIDATE_HOST_CONNECTION();
- rcEnc->rcBindRenderbuffer(rcEnc, ((cb_handle_t *)(native_buffer->handle))->hostHandle);
+ if (native_buffer->common.version != sizeof(android_native_buffer_t)) {
+ return;
+ }
+
+ DEFINE_AND_VALIDATE_HOST_CONNECTION();
+ rcEnc->rcBindRenderbuffer(rcEnc, ((cb_handle_t *)(native_buffer->handle))->hostHandle);
+ } else {
+ //TODO
+ }
return;
}