From 44b529f2e4b953206908f73842ca76d246f715d0 Mon Sep 17 00:00:00 2001 From: Kristian Høgsberg Date: Wed, 4 Jan 2012 09:13:27 -0500 Subject: server: Allocate server ID for when resource->object.id is 0 --- src/wayland-server.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/wayland-server.c b/src/wayland-server.c index 1e97e7b..0cd8b74 100644 --- a/src/wayland-server.c +++ b/src/wayland-server.c @@ -322,9 +322,16 @@ WL_EXPORT void wl_client_add_resource(struct wl_client *client, struct wl_resource *resource) { + if (resource->object.id == 0) + resource->object.id = + wl_map_insert_new(&client->objects, + WL_MAP_SERVER_SIDE, resource); + else + wl_map_insert_at(&client->objects, + resource->object.id, resource); + resource->client = client; wl_list_init(&resource->destroy_listener_list); - wl_map_insert_at(&client->objects, resource->object.id, resource); } WL_EXPORT void -- cgit v1.2.3