diff options
author | Stefan Agner <stefan@agner.ch> | 2019-06-20 22:45:49 +0200 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2020-01-13 14:22:30 +0000 |
commit | 483cc636699977b48f9d1fa32a421189be0061a1 (patch) | |
tree | 376c7e5d73d831b6c8825a4c0ab8133cecc6455e | |
parent | c220a40a817aeb49b9a3a8146c8b5626d89bef97 (diff) |
backend-rdp: use compositor wide struct xkb_context
Instead of allocating our own copy of struct xkb_context use the
compositor wide instance. This avoids leaking of a struct
xkb_context per connection as well.
Signed-off-by: Stefan Agner <stefan@agner.ch>
-rw-r--r-- | libweston/backend-rdp/rdp.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/libweston/backend-rdp/rdp.c b/libweston/backend-rdp/rdp.c index e2f59dc5..6aec15d2 100644 --- a/libweston/backend-rdp/rdp.c +++ b/libweston/backend-rdp/rdp.c @@ -963,7 +963,6 @@ xf_peer_activate(freerdp_peer* client) rdpSettings *settings; rdpPointerUpdate *pointer; struct rdp_peers_item *peersItem; - struct xkb_context *xkbContext; struct xkb_rule_names xkbRuleNames; struct xkb_keymap *keymap; struct weston_output *weston_output; @@ -1047,13 +1046,8 @@ xf_peer_activate(freerdp_peer* client) keymap = NULL; if (xkbRuleNames.layout) { - xkbContext = xkb_context_new(0); - if (!xkbContext) { - weston_log("unable to create a xkb_context\n"); - return FALSE; - } - - keymap = xkb_keymap_new_from_names(xkbContext, &xkbRuleNames, 0); + keymap = xkb_keymap_new_from_names(b->compositor->xkb_context, + &xkbRuleNames, 0); } if (settings->ClientHostname) |