dix: free ClassesRec when a BadAlloc occurs during CoreKeyboardProc.

This commit is contained in:
Peter Hutterer 2008-01-03 18:09:56 +10:30
parent 8da83836b6
commit c7e9b67c54

View File

@ -415,12 +415,14 @@ CoreKeyboardProc(DeviceIntPtr pDev, int what)
keySyms.mapWidth);
if (!keySyms.map) {
ErrorF("[dix] Couldn't allocate core keymap\n");
xfree(classes);
return BadAlloc;
}
modMap = (CARD8 *)xalloc(MAP_LENGTH);
if (!modMap) {
ErrorF("[dix] Couldn't allocate core modifier map\n");
xfree(classes);
return BadAlloc;
}
bzero((char *)modMap, MAP_LENGTH);