diff options
author | Peter Hutterer <peter.hutterer@who-t.net> | 2012-12-06 12:06:28 +1000 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2012-12-17 15:02:26 +1000 |
commit | a1ee26e624e6a7030ecb37a608190cb8e3d1f65b (patch) | |
tree | 68a97cd40786fae48ea0d45f0f1915033cb7ceb5 /Xi | |
parent | 2884b249294e3e8fc749bbb81e2a897314fa0818 (diff) |
barriers: Don't allow releasing the pointer on other client's barriers
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Jasper St. Pierre <jstpierre@mecheye.net>
Diffstat (limited to 'Xi')
-rw-r--r-- | Xi/xibarriers.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Xi/xibarriers.c b/Xi/xibarriers.c index 86e811ea1..8f122537a 100644 --- a/Xi/xibarriers.c +++ b/Xi/xibarriers.c @@ -591,6 +591,9 @@ ProcXIBarrierReleasePointer(ClientPtr client) return err; } + if (CLIENT_ID(barrier_id) != client->index) + return BadAccess; + barrier = container_of(b, struct PointerBarrierClient, barrier); if (barrier->barrier_event_id == event_id) barrier->release_event_id = event_id; |