efl-wl: free atom name when sending selection
authorMike Blumenkrantz <zmike@osg.samsung.com>
Wed, 12 Jul 2017 16:00:52 +0000 (12:00 -0400)
committerMike Blumenkrantz <zmike@osg.samsung.com>
Wed, 12 Jul 2017 15:59:21 +0000 (11:59 -0400)
CID 1377542

src/lib/efl_wl/x11.x

index f5220c1..49bc056 100644 (file)
@@ -99,6 +99,7 @@ x11_send_send(Comp_Data_Device_Source *source, const char* mime_type, int32_t fd
    Ecore_X_Atom t, sel = ECORE_X_ATOM_SELECTION_CLIPBOARD;
    Comp_Data_Device_Transfer *dt;
    Ecore_Window win;
+   char *name;
    win = ecore_evas_window_get(ecore_evas_ecore_evas_get(source->seat->c->evas));
    if (type == COMP_DATA_DEVICE_OFFER_TYPE_DND)
      sel = ECORE_X_ATOM_SELECTION_XDND;
@@ -112,7 +113,9 @@ x11_send_send(Comp_Data_Device_Source *source, const char* mime_type, int32_t fd
    dt->type = type;
    dt->fdh = ecore_main_fd_handler_add(fd, 0, x11_offer_write, dt, NULL, NULL);
    dt->source = source;
-   dt->mime_type = eina_stringshare_add(ecore_x_atom_name_get(t));
+   name = ecore_x_atom_name_get(t);
+   dt->mime_type = eina_stringshare_add(name);
+   free(name);
    dt->source->transfers = eina_inlist_append(dt->source->transfers, EINA_INLIST_GET(dt));
    xconvertselection(ecore_x_display_get(), sel, t, comp_dnd_atom, win, ecore_x_current_time_get());
 }