[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#495483: Another instance of the DoSwapInterval segfault


After further browsing the code, it seems that the problem was in fact
that the function swapInterval called by DoSwapInterval was not
initialised. The faulty function is __glXMesaScreenProbe in
glglxcore.c which initialises all __GLXscreen fields but the
swapInterval field. It seems to me that __glXMesaScreenProbe should at
minima set swapInterval to NULL.

Indeed, after recompilation with the patch below, the gnome
screensaver does not crash any longer. I would guess this will address
also the following bug reports:



Hugo Herbelin

*** GL/glx/glxglcore.c.orig     2009-01-07 13:42:17.000000000 +0100
--- GL/glx/glxglcore.c  2009-01-07 13:43:25.000000000 +0100
*** 390,395 ****
--- 390,396 ----
      screen->base.destroy        = __glXMesaScreenDestroy;
      screen->base.createContext  = __glXMesaScreenCreateContext;
      screen->base.createDrawable = __glXMesaScreenCreateDrawable;
+     screen->base.swapInterval   = NULL;
      screen->base.pScreen       = pScreen;

Reply to: