From fb8546e45f314fd4d24c5fdfea147d7f20a6f0d7 Mon Sep 17 00:00:00 2001 From: Hardening Date: Sat, 21 Dec 2013 23:19:11 +0100 Subject: [PATCH] Release pointer and keyboard with the seat This patch fixes seat releasing during a RDP disconnection. It does not fully fix https://bugs.freedesktop.org/show_bug.cgi?id=66830, but makes things better. --- src/compositor-rdp.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/compositor-rdp.c b/src/compositor-rdp.c index 942af50e..b9c36cfd 100644 --- a/src/compositor-rdp.c +++ b/src/compositor-rdp.c @@ -596,8 +596,11 @@ rdp_peer_context_free(freerdp_peer* client, RdpPeerContext* context) wl_event_source_remove(context->events[i]); } - if(context->item.flags & RDP_PEER_ACTIVATED) + if(context->item.flags & RDP_PEER_ACTIVATED) { + weston_seat_release_keyboard(&context->item.seat); + weston_seat_release_pointer(&context->item.seat); weston_seat_release(&context->item.seat); + } Stream_Free(context->encode_stream, TRUE); nsc_context_free(context->nsc_context); rfx_context_free(context->rfx_context);