Fix Android EGL config attribute retrieval.
Bug 23017372
Change-Id: I9764e558cdf602ecaf2a8c644fd5e444216b1568
Reviewed-on: https://swiftshader-review.googlesource.com/3860
Reviewed-by: Ping-Hao Wu <pinghao@google.com>
Reviewed-by: Nicolas Capens <capn@google.com>
Tested-by: Nicolas Capens <capn@google.com>
diff --git a/src/OpenGL/libEGL/Config.cpp b/src/OpenGL/libEGL/Config.cpp
index 31e98ad..0a67187 100644
--- a/src/OpenGL/libEGL/Config.cpp
+++ b/src/OpenGL/libEGL/Config.cpp
@@ -150,6 +150,9 @@
mTransparentRedValue = 0;
mTransparentGreenValue = 0;
mTransparentBlueValue = 0;
+
+ mRecordableAndroid = EGL_TRUE;
+ mFramebufferTargetAndroid = EGL_TRUE;
}
EGLConfig Config::getHandle() const
@@ -352,8 +355,8 @@
case EGL_MAX_PBUFFER_WIDTH: match = config->mMaxPBufferWidth >= attribute[1]; break;
case EGL_MAX_PBUFFER_HEIGHT: match = config->mMaxPBufferHeight >= attribute[1]; break;
case EGL_MAX_PBUFFER_PIXELS: match = config->mMaxPBufferPixels >= attribute[1]; break;
- case EGL_RECORDABLE_ANDROID: match = true; /* UNIMPLEMENTED(); EGL_ANDROID_recordable */ break;
- case EGL_FRAMEBUFFER_TARGET_ANDROID: match = true; /* UNIMPLEMENTED(); EGL_ANDROID_framebuffer_target */ break;
+ case EGL_RECORDABLE_ANDROID: match = config->mRecordableAndroid == attribute[1]; break;
+ case EGL_FRAMEBUFFER_TARGET_ANDROID: match = config->mFramebufferTargetAndroid == attribute[1]; break;
default:
*numConfig = 0;
return false;