Wed Jul 22 06:12:10 2009 UTC ()
apply patch-am from pkgsrc modular-xorg-server:

date: 2009/06/24 17:25:36;  author: drochner;  state: Exp;  lines: +10 -89
zero out a local variable, fixes random behaviour in case a DRI hw module
cannot be loaded and the server falls back to software rendering, from
Rafal Boni per mail to tech-x11


(mrg)
diff -r1.1.1.2 -r1.2 xsrc/external/mit/xorg-server/dist/glx/glxdri.c

cvs diff -r1.1.1.2 -r1.2 xsrc/external/mit/xorg-server/dist/glx/Attic/glxdri.c (expand / switch to unified diff)

--- xsrc/external/mit/xorg-server/dist/glx/Attic/glxdri.c 2009/07/09 07:04:34 1.1.1.2
+++ xsrc/external/mit/xorg-server/dist/glx/Attic/glxdri.c 2009/07/22 06:12:10 1.2
@@ -958,26 +958,28 @@ __glXDRIscreenProbe(ScreenPtr pScreen) @@ -958,26 +958,28 @@ __glXDRIscreenProbe(ScreenPtr pScreen)
958 int newlyopened; 958 int newlyopened;
959 char *driverName; 959 char *driverName;
960 drm_handle_t hFB; 960 drm_handle_t hFB;
961 int junk; 961 int junk;
962 __GLXDRIscreen *screen; 962 __GLXDRIscreen *screen;
963 char filename[128]; 963 char filename[128];
964 Bool isCapable; 964 Bool isCapable;
965 size_t buffer_size; 965 size_t buffer_size;
966 ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; 966 ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
967 const __DRIconfig **driConfigs; 967 const __DRIconfig **driConfigs;
968 const __DRIextension **extensions; 968 const __DRIextension **extensions;
969 int i; 969 int i;
970 970
 971 memset(&framebuffer, 0, sizeof(framebuffer));
 972
971 if (!xf86LoaderCheckSymbol("DRIQueryDirectRenderingCapable") || 973 if (!xf86LoaderCheckSymbol("DRIQueryDirectRenderingCapable") ||
972 !DRIQueryDirectRenderingCapable(pScreen, &isCapable) || 974 !DRIQueryDirectRenderingCapable(pScreen, &isCapable) ||
973 !isCapable) { 975 !isCapable) {
974 LogMessage(X_INFO, 976 LogMessage(X_INFO,
975 "AIGLX: Screen %d is not DRI capable\n", pScreen->myNum); 977 "AIGLX: Screen %d is not DRI capable\n", pScreen->myNum);
976 return NULL; 978 return NULL;
977 } 979 }
978 980
979 screen = xcalloc(1, sizeof *screen); 981 screen = xcalloc(1, sizeof *screen);
980 if (screen == NULL) 982 if (screen == NULL)
981 return NULL; 983 return NULL;
982 984
983 screen->base.destroy = __glXDRIscreenDestroy; 985 screen->base.destroy = __glXDRIscreenDestroy;