[PATCH weston] window: Don't crash if a cursor image failed to load.
Dima Ryazanov
dima at gmail.com
Tue May 8 21:02:33 PDT 2012
Signed-off-by: Dima Ryazanov <dima at gmail.com>
---
clients/window.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/clients/window.c b/clients/window.c
index 2c59b23..72d36d3 100644
--- a/clients/window.c
+++ b/clients/window.c
@@ -687,10 +687,14 @@ create_cursors(struct display *display)
display->cursor_shm_pool = shm_pool_create(display, pool_size);
for (i = 0; i < count; i++) {
- if (!images[i])
+ cursor = &display->cursors[i];
+
+ if (!images[i]) {
+ cursor->n_images = 0;
+ cursor->images = NULL;
continue;
+ }
- cursor = &display->cursors[i];
create_cursor_from_images(display, cursor, images[i]);
XcursorImagesDestroy(images[i]);
@@ -1958,6 +1962,9 @@ input_set_pointer_image(struct input *input, uint32_t time, int pointer)
if (pointer == input->current_cursor)
return;
+ if (display->cursors[pointer].n_images == 0)
+ return;
+
image = &display->cursors[pointer].images[0];
if (!image->surface)
--
1.7.9.5
More information about the wayland-devel
mailing list