elc_naviframe: Delete naviframe items in LIFO manner on widget deletion.
authorShilpa Singh <shilpa.singh@samsung.com>
Tue, 13 Dec 2016 11:56:18 +0000 (20:56 +0900)
committerJaehyun Cho <jae_hyun.cho@samsung.com>
Tue, 13 Dec 2016 11:56:18 +0000 (20:56 +0900)
commit3d452bdc60b2e353f2728d3ab2894849011c6b4f
tree69480b06d6df51c47a73df96302c0eaa3ad44d77
parentbcfc33fd00a46735c4dd957fd67a30ac275a96ad
elc_naviframe: Delete naviframe items in LIFO manner on widget deletion.

Summary:
Naviframe manages items in the form of a stack, but deletion is happening
in FIFO manner, the deletion of items on widget deletion should also happen
in LIFO manner.

Use Case: Application allocates memory on first push and passes down the same
handle for all subsequent pushes, now on deletion as first item is deleted first
crash happens when the memory is accessed in second item on its deletion.
hence Naviframe should also delete items in LIFO manner.

@feature

Test Plan:
elementary_test->naviframe->push multiple pages
Now terminate the app, the items should be deleted in LIFO
manner.

Reviewers: Hermet, Jaehyun, Jaehyun_Cho

Reviewed By: Jaehyun_Cho

Subscribers: cedric, govi, rajeshps, jpeg

Differential Revision: https://phab.enlightenment.org/D4483
src/lib/elementary/elc_naviframe.c