diff --git a/GL/glx/glxdri.c b/GL/glx/glxdri.c diff --git a/hw/xfree86/dri/dri.c b/hw/xfree86/dri/dri.c index 9e52e61..6a11b38 100644 --- a/hw/xfree86/dri/dri.c +++ b/hw/xfree86/dri/dri.c @@ -120,6 +120,11 @@ DRIScreenInit(ScreenPtr pScreen, DRIInfo if (DRIGeneration != serverGeneration) { if ((DRIScreenPrivIndex = AllocateScreenPrivateIndex()) < 0) return FALSE; + for (i = 0; i < screenInfo.numScreens; i++) + { + ScreenPtr s = screenInfo.screens[i]; + s->devPrivates[DRIScreenPrivIndex].ptr = NULL; + } DRIGeneration = serverGeneration; } diff --git a/hw/xfree86/os-support/xf86drm.h b/hw/xfree86/os-support/xf86drm.h