elementary/naviframe - fix null pointer access on naviframe item deletion.

This commit is contained in:
ChunEon Park 2013-04-25 19:26:09 +09:00
parent 63e74f695b
commit 9df155edaa
3 changed files with 12 additions and 8 deletions

View File

@ -1261,7 +1261,7 @@
* When entry is disabled, scrolling is also disabled.
2013-04-17 ChunEon Park
2013-04-17 ChunEon Park (Hermet)
* Don't try to pop the naviframe item multiple times.
@ -1273,7 +1273,7 @@
* Make access object unfocusable when Aaccessibility is disabled.
2013-04-23 ChunEon Park
2013-04-23 ChunEon Park (Hermet)
* Added elm_object_domain_part_text_translatable_set(),
elm_object_item_domain_part_text_translatable_set().
@ -1284,13 +1284,17 @@
cursor is changed. It is a scroller in scroller. In this case, it moved
twice.
2013-04-23 ChunEon Park
2013-04-23 ChunEon Park (Hermet)
* Support language change for widget items (Ctxpopup, Hoversel,
Naviframe, Diskselector, List, Menu, Segment_Control, Toolbar, Popup,
MultibuttonEntry)
2013-04-23 ChunEon Park
2013-04-23 ChunEon Park (Hermet)
* Support language,changed callback (Fileselector_Button,
Fileselector Entry, Spinner
2013-04-25 ChunEon Park (Hermet)
* Fix null pointer access on naviframe item deletion.

View File

@ -215,6 +215,7 @@ Improvements:
* When entry is disabled, scrolling is also disabled.
* Make access object unfocusable when Aaccessibility is disabled.
* Fix the scrolled entry in scroller is located wrong position when the cursor is changed.
* Fix null pointer access on naviframe item deletion.
Removals:

View File

@ -451,15 +451,14 @@ _item_del_pre_hook(Elm_Object_Item *it)
elm_widget_tree_unfocusable_set(VIEW(nit), EINA_TRUE);
}
if (sd->stack->last->prev)
prev_it = EINA_INLIST_CONTAINER_GET
(sd->stack->last->prev, Elm_Naviframe_Item);
sd->stack = eina_inlist_remove(sd->stack, EINA_INLIST_GET(nit));
if (!sd->stack) elm_widget_resize_object_set(WIDGET(it), sd->dummy_edje);
if (top && !sd->on_deletion) /* must raise another one */
{
if (sd->stack && sd->stack->last)
prev_it = EINA_INLIST_CONTAINER_GET(sd->stack->last,
Elm_Naviframe_Item);
if (!prev_it) goto end;
if (sd->freeze_events)