From: kabeer khan <kabeer.k...@samsung.com>

Signed-off-by: kabeer khan <kabeer.k...@samsung.com>
---
 clients/window.c | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/clients/window.c b/clients/window.c
index 139c7f9..c8ed9a2 100644
--- a/clients/window.c
+++ b/clients/window.c
@@ -133,6 +133,7 @@ struct display {
 
        int has_rgb565;
        int seat_version;
+       int data_device_manager_version;
 };
 
 struct window_output {
@@ -5148,9 +5149,12 @@ input_destroy(struct input *input)
        if (input->selection_offer)
                data_offer_destroy(input->selection_offer);
 
-       if (input->data_device)
-               wl_data_device_destroy(input->data_device);
-
+       if (input->data_device) {
+               if(input->display->data_device_manager_version >= 2)
+                       wl_data_device_release(input->data_device);
+               else
+                       wl_data_device_destroy(input->data_device);
+       }
        if (input->display->seat_version >= 3) {
                if (input->pointer)
                        wl_pointer_release(input->pointer);
@@ -5234,9 +5238,10 @@ registry_handle_global(void *data, struct wl_registry 
*registry, uint32_t id,
                d->shm = wl_registry_bind(registry, id, &wl_shm_interface, 1);
                wl_shm_add_listener(d->shm, &shm_listener, d);
        } else if (strcmp(interface, "wl_data_device_manager") == 0) {
+               d->data_device_manager_version = MIN(version, 2);
                d->data_device_manager =
-                       wl_registry_bind(registry, id,
-                                        &wl_data_device_manager_interface, 1);
+                       wl_registry_bind(registry, id, 
+                                        &wl_data_device_manager_interface, 
d->data_device_manager_version);
        } else if (strcmp(interface, "xdg_shell") == 0) {
                d->xdg_shell = wl_registry_bind(registry, id,
                                                &xdg_shell_interface, 1);
-- 
2.1.0

_______________________________________________
wayland-devel mailing list
wayland-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to