gl: reset gl->DrawBuffer to the necessary values

GL_COLOR_ATTACHMENT0 when a framebuffer is bound
GL_BACK if no framebuffer is bound

https://bugzilla.gnome.org/show_bug.cgi?id=784210
This commit is contained in:
Matthew Waters 2017-06-28 14:45:18 +10:00 committed by Tim-Philipp Müller
parent 402d805c90
commit 715639f78c
3 changed files with 3 additions and 3 deletions

View file

@ -2505,7 +2505,7 @@ _do_convert_draw (GstGLContext * context, GstGLColorConvert * convert)
_unbind_buffer (convert); _unbind_buffer (convert);
if (gl->DrawBuffer) if (gl->DrawBuffer)
gl->DrawBuffer (GL_NONE); gl->DrawBuffer (GL_COLOR_ATTACHMENT0);
/* we are done with the shader */ /* we are done with the shader */
gst_gl_context_clear_shader (context); gst_gl_context_clear_shader (context);

View file

@ -296,7 +296,7 @@ gst_gl_framebuffer_draw_to_texture (GstGLFramebuffer * fb, GstGLMemory * mem,
if (gst_gl_context_get_gl_api (fb->context) & (GST_GL_API_OPENGL | if (gst_gl_context_get_gl_api (fb->context) & (GST_GL_API_OPENGL |
GST_GL_API_OPENGL3)) GST_GL_API_OPENGL3))
gl->DrawBuffer (GL_NONE); gl->DrawBuffer (GL_COLOR_ATTACHMENT0);
gl->Viewport (viewport_dim[0], viewport_dim[1], viewport_dim[2], gl->Viewport (viewport_dim[0], viewport_dim[1], viewport_dim[2],
viewport_dim[3]); viewport_dim[3]);
gst_gl_context_clear_framebuffer (fb->context); gst_gl_context_clear_framebuffer (fb->context);

View file

@ -1951,7 +1951,7 @@ _do_view_convert_draw (GstGLContext * context, GstGLViewConvert * viewconvert)
gl->BindVertexArray (0); gl->BindVertexArray (0);
_unbind_buffer (viewconvert); _unbind_buffer (viewconvert);
if (gl->DrawBuffer) if (gl->DrawBuffer)
gl->DrawBuffer (GL_NONE); gl->DrawBuffer (GL_COLOR_ATTACHMENT0);
/* we are done with the shader */ /* we are done with the shader */
gst_gl_context_clear_shader (context); gst_gl_context_clear_shader (context);
gl->Viewport (viewport_dim[0], viewport_dim[1], viewport_dim[2], gl->Viewport (viewport_dim[0], viewport_dim[1], viewport_dim[2],