layout: remove sizing_eval call when layout is already destructed. @fix
authorLukasz Stanislawski <l.stanislaws@samsung.com>
Wed, 14 May 2014 03:02:10 +0000 (12:02 +0900)
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>
Wed, 14 May 2014 03:02:10 +0000 (12:02 +0900)
commitd23c37169f4e613d10b0fb41e474d2ed1b521b68
tree07b5c690c57fd7f444f5a02f969e7f10b10276e8
parentc3526921d76dab7d27d7c06d8e902359be180ae0
layout: remove sizing_eval call when layout is already destructed. @fix

Summary:
Layout's sub_object_del function calls sizing_eval even if layout's smart_del
function has already been called (Due to widget_smart_del impl).
This patch adds 'destructed_is' flag to Elm_Layout_Smart_Data and prevents unneeded
sizing_eval calls when object is already destructed.
Patch also fixes SIGSEGV in layout derived entry widget caused by calling
sizing_eval after entry_smart_del destructor.

Added entry test to avoid regression for SIGSEGV bug.

Test Plan: run tests/elm_test_entry

Reviewers: raster, seoz, tasn, cedric

Differential Revision: https://phab.enlightenment.org/D823
src/lib/elm_layout.c
src/lib/elm_widget_layout.h
src/tests/Makefile.am
src/tests/elm_suite.c
src/tests/elm_suite.h
src/tests/elm_test_entry.c [new file with mode: 0644]