diff --git a/dix/devices.c b/dix/devices.c index 32e067bca..042f12ffa 100644 --- a/dix/devices.c +++ b/dix/devices.c @@ -474,7 +474,8 @@ ActivateDevice(DeviceIntPtr dev, BOOL sendevent) /* Initialize memory for sprites. */ if (IsMaster(dev) && dev->spriteInfo->spriteOwner) - pScreen->DeviceCursorInitialize(dev, pScreen); + if (!pScreen->DeviceCursorInitialize(dev, pScreen)) + ret = BadAlloc; SendDevicePresenceEvent(dev->id, DeviceAdded); if (sendevent) diff --git a/mi/midispcur.c b/mi/midispcur.c index 904163091..54a6787a4 100644 --- a/mi/midispcur.c +++ b/mi/midispcur.c @@ -780,7 +780,7 @@ miDCDeviceInitialize(DeviceIntPtr pDev, ScreenPtr pScreen) { pScreen = screenInfo.screens[i]; - pBuffer = xalloc(sizeof(miDCBufferRec)); + pBuffer = xcalloc(1, sizeof(miDCBufferRec)); if (!pBuffer) goto failure;