From 90148e64abb944af0e893e4114339c097579c9ed Mon Sep 17 00:00:00 2001 From: emersion Date: Thu, 1 Mar 2018 10:19:48 +0100 Subject: [PATCH] Fix clients binding multiple times to the same output --- types/wlr_output.c | 7 +------ types/wlr_surface.c | 2 -- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/types/wlr_output.c b/types/wlr_output.c index 809b1959..bc3da269 100644 --- a/types/wlr_output.c +++ b/types/wlr_output.c @@ -16,9 +16,7 @@ #include "util/signal.h" static void wl_output_send_to_resource(struct wl_resource *resource) { - assert(resource); struct wlr_output *output = wlr_output_from_resource(resource); - assert(output); const uint32_t version = wl_resource_get_version(resource); if (version >= WL_OUTPUT_GEOMETRY_SINCE_VERSION) { wl_output_send_geometry(resource, output->lx, output->ly, @@ -52,9 +50,7 @@ static void wl_output_send_to_resource(struct wl_resource *resource) { static void wlr_output_send_current_mode_to_resource( struct wl_resource *resource) { - assert(resource); struct wlr_output *output = wlr_output_from_resource(resource); - assert(output); const uint32_t version = wl_resource_get_version(resource); if (version < WL_OUTPUT_MODE_SINCE_VERSION) { return; @@ -76,7 +72,7 @@ static void wlr_output_send_current_mode_to_resource( static void wl_output_destroy(struct wl_resource *resource) { struct wlr_output *output = wlr_output_from_resource(resource); - struct wl_resource *_resource = NULL; + struct wl_resource *_resource; wl_resource_for_each(_resource, &output->wl_resources) { if (_resource == resource) { struct wl_list *link = wl_resource_get_link(_resource); @@ -98,7 +94,6 @@ static struct wl_output_interface wl_output_impl = { static void wl_output_bind(struct wl_client *wl_client, void *data, uint32_t version, uint32_t id) { struct wlr_output *wlr_output = data; - assert(wl_client && wlr_output); struct wl_resource *wl_resource = wl_resource_create(wl_client, &wl_output_interface, version, id); diff --git a/types/wlr_surface.c b/types/wlr_surface.c index d63fc1f1..23966cd1 100644 --- a/types/wlr_surface.c +++ b/types/wlr_surface.c @@ -901,7 +901,6 @@ void wlr_surface_send_enter(struct wlr_surface *surface, wl_resource_for_each(resource, &output->wl_resources) { if (client == wl_resource_get_client(resource)) { wl_surface_send_enter(surface->resource, resource); - break; } } } @@ -913,7 +912,6 @@ void wlr_surface_send_leave(struct wlr_surface *surface, wl_resource_for_each(resource, &output->wl_resources) { if (client == wl_resource_get_client(resource)) { wl_surface_send_leave(surface->resource, resource); - break; } } }