Merge remote-tracking branch 'whot/barriers'

Conflicts:
	Xi/xichangehierarchy.c

Small conflict with the patch from

	Xi: don't use devices after removing them

Was easily resolved by hand.

Signed-off-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
Keith Packard 2012-12-19 12:09:31 -08:00
commit 014a5c8a9d
21 changed files with 1464 additions and 464 deletions

View file

@ -52,6 +52,7 @@
#include "xkbsrv.h"
#include "xichangehierarchy.h"
#include "xibarriers.h"
/**
* Send the current state of the device hierarchy to all clients.
@ -189,6 +190,8 @@ add_master(ClientPtr client, xXIAddMasterInfo * c, int flags[MAXDEVICES])
flags[XTestptr->id] |= XISlaveAttached;
flags[XTestkeybd->id] |= XISlaveAttached;
XIBarrierNewMasterDevice(client, ptr->id);
unwind:
free(name);
return rc;
@ -293,6 +296,8 @@ remove_master(ClientPtr client, xXIRemoveMasterInfo * r, int flags[MAXDEVICES])
}
}
XIBarrierRemoveMasterDevice(client, ptr->id);
/* disable the remove the devices, XTest devices must be done first
else the sprites they rely on will be destroyed */
DisableDevice(XTestptr, FALSE);