e_client: remove e_client from e_comp's render post list when freeing. 46/44546/1
authorGwanglim Lee <gl77.lee@samsung.com>
Thu, 23 Jul 2015 06:46:30 +0000 (15:46 +0900)
committerGwanglim Lee <gl77.lee@samsung.com>
Thu, 23 Jul 2015 06:46:30 +0000 (15:46 +0900)
This prevents double-free error on _e_comp_canvas_render_post if ec remains
in e_comp's post_updates list even if it was deleted.

Change-Id: I2e3be9a667ca4590bc2e5587fa963034c5b57cd9

src/bin/e_client.c

index 76d0d97..ab72a21 100644 (file)
@@ -444,6 +444,8 @@ _e_client_revert_focus(E_Client *ec)
 static void
 _e_client_free(E_Client *ec)
 {
+   ec->comp->post_updates = eina_list_remove(ec->comp->post_updates, ec);
+
    e_comp_object_redirected_set(ec->frame, 0);
    e_comp_object_render_update_del(ec->frame);