e_comp_wl_screenshooter: added destroy request callback 31/275331/2 accepted/tizen/unified/20220526.143654 submit/tizen/20220525.060017
authorJunseok Kim <juns.kim@samsung.com>
Thu, 19 May 2022 09:28:25 +0000 (18:28 +0900)
committerDoyoun Kang <doyoun.kang@samsung.com>
Wed, 25 May 2022 05:01:24 +0000 (05:01 +0000)
Change-Id: I41f5b8b58b0277c3086a5f7d302acb1fe7a55961

src/bin/e_comp_wl_screenshooter.c

index 0b29ed9ccafbeb7be2ce3f8b70e49e61de8b5a4d..5bce6cadb3d4467abbdf3f1988a93b98f009b9e6 100644 (file)
@@ -868,9 +868,17 @@ privilege_fail:
    _e_tz_screenmirror_destroy(mirror);
 }
 
+static void
+_e_screenshooter_cb_destroy(struct wl_client *client,
+                            struct wl_resource *resource)
+{
+   wl_resource_destroy(resource);
+}
+
 static const struct screenshooter_interface _e_screenshooter_interface =
 {
-   _e_screenshooter_cb_shoot
+   _e_screenshooter_cb_shoot,
+   _e_screenshooter_cb_destroy,
 };
 
 static void
@@ -878,7 +886,7 @@ _e_screenshooter_cb_bind(struct wl_client *client, void *data, uint32_t version,
 {
    struct wl_resource *res;
 
-   if (!(res = wl_resource_create(client, &screenshooter_interface, MIN(version, 1), id)))
+   if (!(res = wl_resource_create(client, &screenshooter_interface, MIN(version, 2), id)))
      {
         ERR("Could not create screenshooter resource");
         wl_client_post_no_memory(client);
@@ -897,7 +905,7 @@ e_comp_wl_screenshooter_init(void)
    if (!e_comp_wl->wl.disp) return 0;
 
    /* try to add screenshooter to wayland globals */
-   if (!wl_global_create(e_comp_wl->wl.disp, &screenshooter_interface, 1,
+   if (!wl_global_create(e_comp_wl->wl.disp, &screenshooter_interface, 2,
                          NULL, _e_screenshooter_cb_bind))
      {
         ERR("Could not add screenshooter to wayland globals");