diff -Nrup xorg-server-9999-old/hw/dmx/dmx.h xorg-server-9999/hw/dmx/dmx.h --- xorg-server-9999-old/hw/dmx/dmx.h 2008-10-16 06:05:27.000000000 -0500 +++ xorg-server-9999/hw/dmx/dmx.h 2008-10-16 11:01:55.000000000 -0500 @@ -341,14 +341,16 @@ do { \ #define _MAXSCREENSALLOCF(o,size,fatal) \ do { \ if (!o) { \ - o = xcalloc((size), sizeof(*(o))); \ + o = xalloc((size) * sizeof(*(o))); \ + if (o) memset(o, 0, (size) * sizeof(*(o))); \ if (!o && fatal) FatalError(MAXSCREEN_FAILED_TXT #o); \ } \ } while (0) #define _MAXSCREENSALLOCR(o,size,retval) \ do { \ if (!o) { \ - o = xcalloc((size), sizeof(*(o))); \ + o = xalloc((size) * sizeof(*(o))); \ + if (o) memset(o, 0, (size) * sizeof(*(o))); \ if (!o) return retval; \ } \ } while (0) diff -Nrup xorg-server-9999-old/hw/dmx/dmxextension.c xorg-server-9999/hw/dmx/dmxextension.c --- xorg-server-9999-old/hw/dmx/dmxextension.c 2008-10-16 06:05:27.000000000 -0500 +++ xorg-server-9999/hw/dmx/dmxextension.c 2008-10-16 11:05:43.000000000 -0500 @@ -1121,10 +1121,11 @@ static void dmxBERestoreRenderGlyph(poin } /* Now allocate the memory we need */ - images = xcalloc(len_images, sizeof(char)); + images = xalloc(len_images*sizeof(char)); gids = xalloc(glyphSet->hash.tableEntries*sizeof(Glyph)); glyphs = xalloc(glyphSet->hash.tableEntries*sizeof(XGlyphInfo)); + memset(images, 0, len_images * sizeof(char)); pos = images; ctr = 0; diff -Nrup xorg-server-9999-old/hw/dmx/glxProxy/glxutil.c xorg-server-9999/hw/dmx/glxProxy/glxutil.c --- xorg-server-9999-old/hw/dmx/glxProxy/glxutil.c 2008-10-16 06:05:27.000000000 -0500 +++ xorg-server-9999/hw/dmx/glxProxy/glxutil.c 2008-10-16 11:00:47.000000000 -0500 @@ -69,11 +69,13 @@ __glXCalloc(size_t numElements, size_t e if ((numElements == 0) || (elementSize == 0)) { return NULL; } - addr = xcalloc(numElements, elementSize); + size = numElements * elementSize; + addr = (void *) xalloc(size); if (addr == NULL) { /* XXX: handle out of memory error */ return NULL; } + memset(addr, 0, size); return addr; } diff -Nrup xorg-server-9999-old/hw/dmx/input/dmxmotion.c xorg-server-9999/hw/dmx/input/dmxmotion.c --- xorg-server-9999-old/hw/dmx/input/dmxmotion.c 2008-10-16 06:05:27.000000000 -0500 +++ xorg-server-9999/hw/dmx/input/dmxmotion.c 2008-10-16 10:54:10.000000000 -0500 @@ -113,7 +113,8 @@ void dmxPointerPutMotionEvent(DeviceIntP * DMX_MOTION_SIZE); dmxLocal->head = 0; dmxLocal->tail = 0; - dmxLocal->valuators = xcalloc(sizeof(*dmxLocal->valuators), numAxes); + dmxLocal->valuators = xalloc(sizeof(*dmxLocal->valuators) * numAxes); + memset(dmxLocal->valuators, 0, sizeof(*dmxLocal->valuators) * numAxes); } else { if (++dmxLocal->tail >= DMX_MOTION_SIZE) dmxLocal->tail = 0; if (dmxLocal->head == dmxLocal->tail)