diff --git a/ext/gtk/gtkgstglwidget.c b/ext/gtk/gtkgstglwidget.c
index 2a8beab20b..8381c21ce1 100644
--- a/ext/gtk/gtkgstglwidget.c
+++ b/ext/gtk/gtkgstglwidget.c
@@ -200,7 +200,8 @@ _redraw_texture (GtkGstGLWidget * gst_widget, guint tex)
 
   if (gl->BindVertexArray)
     gl->BindVertexArray (0);
-  gtk_gst_gl_widget_unbind_buffer (gst_widget);
+  else
+    gtk_gst_gl_widget_unbind_buffer (gst_widget);
 
   gl->BindTexture (GL_TEXTURE_2D, 0);
 }