possible bug vector -> access wd after callback has freed obj and

freed wd.



SVN revision: 64384
This commit is contained in:
Carsten Haitzler 2011-10-25 11:09:01 +00:00
parent dd4275ad34
commit bcaa2831d2
1 changed files with 3 additions and 1 deletions

View File

@ -1407,7 +1407,6 @@ _entry_changed_common_handling(void *data, const char *event)
_sizing_eval(data);
if (wd->text) eina_stringshare_del(wd->text);
wd->text = NULL;
evas_object_smart_callback_call(data, event, NULL);
if (wd->delay_write)
{
ecore_timer_del(wd->delay_write);
@ -1417,6 +1416,9 @@ _entry_changed_common_handling(void *data, const char *event)
evas_event_thaw_eval(evas_object_evas_get(data));
if ((!wd->autosave) || (!wd->file)) return;
wd->delay_write = ecore_timer_add(2.0, _delay_write, data);
/* callback - this could call callbacks that delete the entry... thus...
* any access to wd after this could be invalid */
evas_object_smart_callback_call(data, event, NULL);
}
static void