text: Only allow input-method started by weston to bind

Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
dev
Jan Arne Petersen 12 years ago committed by Kristian Høgsberg
parent 7cd29e199a
commit b41531a88e
  1. 21
      src/text-backend.c

@ -759,17 +759,24 @@ bind_input_method(struct wl_client *client,
NULL,
id, input_method);
if (input_method->input_method_binding == NULL) {
resource->destroy = unbind_input_method;
input_method->input_method_binding = resource;
if (input_method->input_method_binding != NULL) {
wl_resource_post_error(resource, WL_DISPLAY_ERROR_INVALID_OBJECT,
"interface object already bound");
wl_resource_destroy(resource);
return;
}
text_backend->input_method.binding = resource;
if (text_backend->input_method.client != client) {
wl_resource_post_error(resource, WL_DISPLAY_ERROR_INVALID_OBJECT,
"permission to bind desktop_shell denied");
wl_resource_destroy(resource);
return;
}
wl_resource_post_error(resource, WL_DISPLAY_ERROR_INVALID_OBJECT,
"interface object already bound");
wl_resource_destroy(resource);
resource->destroy = unbind_input_method;
input_method->input_method_binding = resource;
text_backend->input_method.binding = resource;
}
static void

Loading…
Cancel
Save