summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Agner <stefan@agner.ch>2019-06-20 22:45:49 +0200
committerSimon Ser <contact@emersion.fr>2020-01-13 14:22:30 +0000
commit483cc636699977b48f9d1fa32a421189be0061a1 (patch)
tree376c7e5d73d831b6c8825a4c0ab8133cecc6455e
parentc220a40a817aeb49b9a3a8146c8b5626d89bef97 (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.c10
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)