aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--render/gles2/renderer.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/render/gles2/renderer.c b/render/gles2/renderer.c
index bb8dab02..db313034 100644
--- a/render/gles2/renderer.c
+++ b/render/gles2/renderer.c
@@ -453,7 +453,12 @@ static enum wl_shm_format gles2_preferred_read_format(
pop_gles2_debug(renderer);
EGLint alpha_size = -1;
- if (renderer->egl->config != EGL_NO_CONFIG_KHR) {
+ if (renderer->current_buffer != NULL) {
+ glBindRenderbuffer(GL_RENDERBUFFER, renderer->current_buffer->rbo);
+ glGetRenderbufferParameteriv(GL_RENDERBUFFER,
+ GL_RENDERBUFFER_ALPHA_SIZE, &alpha_size);
+ glBindRenderbuffer(GL_RENDERBUFFER, 0);
+ } else if (renderer->egl->config != EGL_NO_CONFIG_KHR) {
eglGetConfigAttrib(renderer->egl->display, renderer->egl->config,
EGL_ALPHA_SIZE, &alpha_size);
}