diff --git a/src/modules/graphics/opengl/Canvas.cpp b/src/modules/graphics/opengl/Canvas.cpp index 97949a67d..2f704c9f3 100644 --- a/src/modules/graphics/opengl/Canvas.cpp +++ b/src/modules/graphics/opengl/Canvas.cpp @@ -501,13 +501,15 @@ void Canvas::startGrab() gl.setFramebufferSRGB(false); } - if (attachedCanvases.size() == 0) - return; + if (attachedCanvases.size() > 0) + { + // Make sure the FBO is only using a single draw buffer. + // GLES3 only has glDrawBuffers, so we avoid using glDrawBuffer. + const GLenum buffers[] = {GL_COLOR_ATTACHMENT0}; + glDrawBuffers(1, buffers); - // Make sure the FBO is only using a single draw buffer. - glDrawBuffer(GL_COLOR_ATTACHMENT0); - - attachedCanvases.clear(); + attachedCanvases.clear(); + } } void Canvas::stopGrab(bool switchingToOtherCanvas)