summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJaehwan Kim <jae.hwan.kim@samsung.com>2013-03-19 19:53:53 +0900
committerJaehwan Kim <jae.hwan.kim@samsung.com>2013-03-19 19:53:53 +0900
commit369509c7665b6bb0e281d6d3a18db20cf82c2b90 (patch)
tree7cfc0c1342d9f6d21031ee52ba300b7a2d1987d4
parent61df6a6e1cfd19622cbb4ea2c9b4dc6992c13fb6 (diff)
Fix the elm_shutdown bug in _elm_shutdown_config.
When the elm_shutdown is used after elm_config_all_flush, the segment fault occur. It's why it uses ecore_x in _prop_all_update_cb after removing it.
-rw-r--r--ChangeLog6
-rw-r--r--NEWS1
-rw-r--r--src/lib/elm_config.c22
3 files changed, 18 insertions, 11 deletions
diff --git a/ChangeLog b/ChangeLog
index 1c269a0e2..eec4abfce 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -782,3 +782,9 @@
7822013-03-18 WooHyun Jung 7822013-03-18 WooHyun Jung
783 783
784 * Focus highlight should be reconfigured when theme is changed. 784 * Focus highlight should be reconfigured when theme is changed.
785
7862013-03-19 Jaehwan Kim
787
788 * Fix the elm_shutdown bug in _elm_shutdown_config.
789 When the elm_shutdown is used after elm_config_all_flush, the segment fault occur.
790 It's why it uses ecore_x in _prop_all_update_cb after removing it.
diff --git a/NEWS b/NEWS
index 63bacf9b8..fe6990b18 100644
--- a/NEWS
+++ b/NEWS
@@ -25,6 +25,7 @@ Fixes:
25 * Entry: Fixed a bug with text appending. 25 * Entry: Fixed a bug with text appending.
26 * List : Focus_next should be executed only when access mode is enabled. 26 * List : Focus_next should be executed only when access mode is enabled.
27 * Focus highlight should be reconfigured when theme is changed. 27 * Focus highlight should be reconfigured when theme is changed.
28 * Fix the elm_shutdown bug in _elm_shutdown_config.
28 29
29Elementary 1.7.5 30Elementary 1.7.5
30 31
diff --git a/src/lib/elm_config.c b/src/lib/elm_config.c
index 9a11b2cbb..ce3a72349 100644
--- a/src/lib/elm_config.c
+++ b/src/lib/elm_config.c
@@ -2123,6 +2123,17 @@ _elm_config_init(void)
2123void 2123void
2124_elm_config_sub_shutdown(void) 2124_elm_config_sub_shutdown(void)
2125{ 2125{
2126#ifdef HAVE_ELEMENTARY_X
2127 if (_prop_all_update_timer)
2128 {
2129 ecore_timer_del(_prop_all_update_timer);
2130 _prop_all_update_timer = NULL;
2131 _prop_all_update_cb(NULL);
2132 }
2133 if (_prop_change_delay_timer) ecore_timer_del(_prop_change_delay_timer);
2134 _prop_change_delay_timer = NULL;
2135#endif
2136
2126#define ENGINE_COMPARE(name) (!strcmp(_elm_config->engine, name)) 2137#define ENGINE_COMPARE(name) (!strcmp(_elm_config->engine, name))
2127 if (ENGINE_COMPARE(ELM_SOFTWARE_X11) || 2138 if (ENGINE_COMPARE(ELM_SOFTWARE_X11) ||
2128 ENGINE_COMPARE(ELM_SOFTWARE_16_X11) || 2139 ENGINE_COMPARE(ELM_SOFTWARE_16_X11) ||
@@ -2255,17 +2266,6 @@ _elm_config_profile_set(const char *profile)
2255void 2266void
2256_elm_config_shutdown(void) 2267_elm_config_shutdown(void)
2257{ 2268{
2258#ifdef HAVE_ELEMENTARY_X
2259 if (_prop_all_update_timer)
2260 {
2261 ecore_timer_del(_prop_all_update_timer);
2262 _prop_all_update_timer = NULL;
2263 _prop_all_update_cb(NULL);
2264 }
2265 if (_prop_change_delay_timer) ecore_timer_del(_prop_change_delay_timer);
2266 _prop_change_delay_timer = NULL;
2267#endif
2268
2269#define ENGINE_COMPARE(name) (!strcmp(_elm_config->engine, name)) 2269#define ENGINE_COMPARE(name) (!strcmp(_elm_config->engine, name))
2270 if (ENGINE_COMPARE(ELM_SOFTWARE_X11) || 2270 if (ENGINE_COMPARE(ELM_SOFTWARE_X11) ||
2271 ENGINE_COMPARE(ELM_SOFTWARE_16_X11) || 2271 ENGINE_COMPARE(ELM_SOFTWARE_16_X11) ||