diff options
author | android-build-team Robot <android-build-team-robot@google.com> | 2018-05-09 18:59:53 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2018-05-09 18:59:53 +0000 |
commit | 691b44d51b02a1b4fc6fd00605e5dd6098d217b9 (patch) | |
tree | e453d27ad98ff75479119f7596aea9cc859d4dc4 | |
parent | 1c5fc443b2fd9cba76a4c0424c491e491764db78 (diff) | |
parent | 794b7971fa1e293633ba0fafcbd3df6c97e1a5b6 (diff) | |
download | device_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.cpp | 30 | ||||
-rw-r--r-- | system/GLESv2/gl2.cpp | 28 |
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; } |