summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter@cs.unisa.edu.au>2007-11-13 16:50:18 +1030
committerPeter Hutterer <peter@cs.unisa.edu.au>2007-11-13 16:50:18 +1030
commitc703849e79391bb1bb01a994bb8d5cf2eb64e48b (patch)
treedc0d41c43c14f20aa6715c78cca8f9ca1ba11e9e
parent51239f87ce42ad564ceee1761980391947294511 (diff)
dix: Attach spriteInfoRec to same memory block as the DeviceIntRec.
No need to alloc a separate one, we never do anything special with it anyway.
-rw-r--r--dix/devices.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/dix/devices.c b/dix/devices.c
index 2c6d3e1b1..7841e642c 100644
--- a/dix/devices.c
+++ b/dix/devices.c
@@ -134,7 +134,7 @@ AddInputDevice(DeviceProc deviceProc, Bool autoStart)
if (devid >= MAX_DEVICES)
return (DeviceIntPtr)NULL;
- dev = (DeviceIntPtr) xcalloc(sizeof(DeviceIntRec), 1);
+ dev = (DeviceIntPtr) xcalloc(sizeof(DeviceIntRec) + sizeof(SpriteInfoRec), 1);
if (!dev)
return (DeviceIntPtr)NULL;
dev->name = (char *)NULL;
@@ -183,9 +183,7 @@ AddInputDevice(DeviceProc deviceProc, Bool autoStart)
dev->enabled = FALSE;
/* sprite defaults */
- dev->spriteInfo = (SpriteInfoPtr)xcalloc(sizeof(SpriteInfoRec), 1);
- if (!dev->spriteInfo)
- return (DeviceIntPtr)NULL;
+ dev->spriteInfo = (SpriteInfoPtr)&dev[1];
dev->spriteInfo->sprite = NULL;
dev->spriteInfo->spriteOwner = FALSE;
@@ -757,7 +755,6 @@ CloseDevice(DeviceIntPtr dev)
xfree(dev->devPrivates);
xfree(dev->deviceGrab.sync.event);
- xfree(dev->spriteInfo);
xfree(dev);
}