diff options
author | Marek Chalupa <mchqwerty@gmail.com> | 2016-01-11 11:45:12 +0100 |
---|---|---|
committer | Bryce Harrington <bryce@osg.samsung.com> | 2016-01-13 15:11:00 -0800 |
commit | 1b7191743eeeecedd66af03eeb960c5978fc8335 (patch) | |
tree | b615e254062795fa41a40e0b15dfac89d166b510 | |
parent | 693bf00083c372de4da785810429498d215d0c85 (diff) | |
download | wayland-1b7191743eeeecedd66af03eeb960c5978fc8335.tar.gz |
server: don't send an error to NULL display_resource
if display_resource = wl_resource_create() fails in bind_display(),
we call wl_client_post_no_memory() which is wrong, since this function
uses display_resource (which is NULL at this point).
said simply: don't send an error to resource that you've just failed to create)
https://bugs.freedesktop.org/show_bug.cgi?id=91356
Reported-by: Ashim <ashim.shah@samsung.com>
Signed-off-by: Marek Chalupa <mchqwerty@gmail.com>
Reviewed-by: Derek Foreman <derekf@osg.samsung.com>
Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
-rw-r--r-- | src/wayland-server.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/wayland-server.c b/src/wayland-server.c index 2158c08..2cfbb4a 100644 --- a/src/wayland-server.c +++ b/src/wayland-server.c @@ -779,7 +779,8 @@ bind_display(struct wl_client *client, struct wl_display *display) client->display_resource = wl_resource_create(client, &wl_display_interface, 1, 1); if (client->display_resource == NULL) { - wl_client_post_no_memory(client); + /* DON'T send no-memory error to client - it has no + * resource to which it could post the event */ return -1; } |