[vlc-devel] [PATCH] GLX: set context for the current thread before calling vout_display_opengl_Delete

Felix Abecassis felix.abecassis at gmail.com
Fri Mar 7 11:18:31 CET 2014


Fix #9437. Function Close() was called by a thread with no current GLX
context, causing a segmentation fault in glFinish().
---
 modules/video_output/xcb/glx.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/modules/video_output/xcb/glx.c b/modules/video_output/xcb/glx.c
index e5661a4..fdfdff9 100644
--- a/modules/video_output/xcb/glx.c
+++ b/modules/video_output/xcb/glx.c
@@ -351,6 +351,9 @@ static void Close (vlc_object_t *obj)
     vout_display_sys_t *sys = vd->sys;
     Display *dpy = sys->display;
 
+    if (sys->ctx != NULL)
+        glXMakeContextCurrent (dpy, sys->glwin, sys->glwin, sys->ctx);
+
     if (sys->gl.sys != NULL)
         vout_display_opengl_Delete (sys->vgl);
 
-- 
1.8.3.2




More information about the vlc-devel mailing list