fix efm segv on single click due to out callbacks being called while deleting objects etc.

This commit is contained in:
Carsten Haitzler 2013-05-28 21:03:07 +09:00
parent 738b5d417d
commit 317968efa8
1 changed files with 5 additions and 1 deletions

View File

@ -3441,7 +3441,6 @@ _e_fm2_file_del(Evas_Object *obj, const char *file)
ic->region = NULL;
}
_e_fm2_icon_free(ic);
printf("b: %i\n", eina_list_count(sd->icons));
return;
}
}
@ -4905,6 +4904,11 @@ _e_fm2_icon_unrealize(E_Fm2_Icon *ic)
ic->realized = EINA_FALSE;
evas_object_del(ic->obj);
ic->obj = NULL;
evas_object_event_callback_del_full(ic->rect, EVAS_CALLBACK_MOUSE_DOWN, _e_fm2_cb_icon_mouse_down, ic);
evas_object_event_callback_del_full(ic->rect, EVAS_CALLBACK_MOUSE_UP, _e_fm2_cb_icon_mouse_up, ic);
evas_object_event_callback_del_full(ic->rect, EVAS_CALLBACK_MOUSE_MOVE, _e_fm2_cb_icon_mouse_move, ic);
evas_object_event_callback_del_full(ic->rect, EVAS_CALLBACK_MOUSE_IN, _e_fm2_cb_icon_mouse_in, ic);
evas_object_event_callback_del_full(ic->rect, EVAS_CALLBACK_MOUSE_OUT, _e_fm2_cb_icon_mouse_out, ic);
evas_object_del(ic->rect);
ic->rect = NULL;
evas_object_del(ic->obj_icon);