add safe guards around term_set_title
Should avoid issues when popup is up while term is being destroyed.
This commit is contained in:
parent
1d138fba36
commit
175e474983
|
@ -3223,7 +3223,8 @@ term_miniview_toggle(Term *term)
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_set_title_ok_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
|
_set_title_ok_cb(void *data, Evas_Object *obj EINA_UNUSED,
|
||||||
|
void *event_info EINA_UNUSED)
|
||||||
{
|
{
|
||||||
Evas_Object *popup = data;
|
Evas_Object *popup = data;
|
||||||
Term *term = evas_object_data_get(popup, "term");
|
Term *term = evas_object_data_get(popup, "term");
|
||||||
|
@ -3235,12 +3236,18 @@ _set_title_ok_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA
|
||||||
|
|
||||||
termio_user_title_set(term->termio, title);
|
termio_user_title_set(term->termio, title);
|
||||||
evas_object_del(popup);
|
evas_object_del(popup);
|
||||||
|
term_unref(term);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_set_title_cancel_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
|
_set_title_cancel_cb(void *data, Evas_Object *obj EINA_UNUSED,
|
||||||
|
void *event_info EINA_UNUSED)
|
||||||
{
|
{
|
||||||
|
Evas_Object *popup = data;
|
||||||
|
Term *term = evas_object_data_get(popup, "term");
|
||||||
|
|
||||||
evas_object_del(data);
|
evas_object_del(data);
|
||||||
|
term_unref(term);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -3251,6 +3258,8 @@ term_set_title(Term *term)
|
||||||
|
|
||||||
EINA_SAFETY_ON_NULL_RETURN(term);
|
EINA_SAFETY_ON_NULL_RETURN(term);
|
||||||
|
|
||||||
|
term_ref(term);
|
||||||
|
|
||||||
popup = elm_popup_add(term->wn->win);
|
popup = elm_popup_add(term->wn->win);
|
||||||
evas_object_data_set(popup, "term", term);
|
evas_object_data_set(popup, "term", term);
|
||||||
elm_object_part_text_set(popup, "title,text", _("Set title"));
|
elm_object_part_text_set(popup, "title,text", _("Set title"));
|
||||||
|
|
Loading…
Reference in New Issue