| From f722f047efa6eba2d793364f7031adadcf2efab7 Mon Sep 17 00:00:00 2001 |
| From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <sebastian@centricular.com> |
| Date: Wed, 19 Aug 2015 13:52:21 +0300 |
| Subject: [PATCH] gtk/gl: Use our GL function table instead of directly calling |
| GL functions |
| |
| Otherwise we would have to link the plugin to the GL libraries directly. |
| --- |
| ext/gtk/gtkgstglwidget.c | 13 ++++++++----- |
| 1 file changed, 8 insertions(+), 5 deletions(-) |
| |
| diff --git a/ext/gtk/gtkgstglwidget.c b/ext/gtk/gtkgstglwidget.c |
| index cdce3aa..059fa87 100644 |
| --- a/ext/gtk/gtkgstglwidget.c |
| +++ b/ext/gtk/gtkgstglwidget.c |
| @@ -202,10 +202,12 @@ _redraw_texture (GtkGstGLWidget * gst_widget, guint tex) |
| } |
| |
| static inline void |
| -_draw_black (void) |
| +_draw_black (GstGLContext * context) |
| { |
| - glClearColor (0.0, 0.0, 0.0, 0.0); |
| - glClear (GL_COLOR_BUFFER_BIT); |
| + const GstGLFuncs *gl = context->gl_vtable; |
| + |
| + gl->ClearColor (0.0, 0.0, 0.0, 0.0); |
| + gl->Clear (GL_COLOR_BUFFER_BIT); |
| } |
| |
| static gboolean |
| @@ -225,7 +228,7 @@ gtk_gst_gl_widget_render (GtkGLArea * widget, GdkGLContext * context) |
| gtk_gst_gl_widget_init_redisplay (GTK_GST_GL_WIDGET (widget)); |
| |
| if (!priv->initted || !base_widget->negotiated) { |
| - _draw_black (); |
| + _draw_black (priv->other_context); |
| goto done; |
| } |
| |
| @@ -237,7 +240,7 @@ gtk_gst_gl_widget_render (GtkGLArea * widget, GdkGLContext * context) |
| |
| if (!gst_video_frame_map (&gl_frame, &base_widget->v_info, buffer, |
| GST_MAP_READ | GST_MAP_GL)) { |
| - _draw_black (); |
| + _draw_black (priv->other_context); |
| goto done; |
| } |
| |
| -- |
| 2.5.0 |
| |