jpeg pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=e401b223f8813587ddb7d370f199c88ba2cf23e7

commit e401b223f8813587ddb7d370f199c88ba2cf23e7
Author: Jean-Philippe Andre <[email protected]>
Date:   Tue Sep 26 17:14:19 2017 +0900

    elm: Delete atspi root object on shutdown
    
    Ugly implementation but this will do.
    
    @fix
---
 src/lib/elementary/elm_atspi_bridge.c               | 1 +
 src/lib/elementary/elm_interface_atspi_accessible.c | 6 ++++++
 src/lib/elementary/elm_priv.h                       | 2 ++
 3 files changed, 9 insertions(+)

diff --git a/src/lib/elementary/elm_atspi_bridge.c 
b/src/lib/elementary/elm_atspi_bridge.c
index 8ff4f1231b..09247fdc52 100644
--- a/src/lib/elementary/elm_atspi_bridge.c
+++ b/src/lib/elementary/elm_atspi_bridge.c
@@ -4486,6 +4486,7 @@ _elm_atspi_bridge_shutdown(void)
         efl_del(_instance);
         _init_count = 0;
      }
+   _elm_interface_atspi_shutdown();
 }
 
 static Key_Event_Info*
diff --git a/src/lib/elementary/elm_interface_atspi_accessible.c 
b/src/lib/elementary/elm_interface_atspi_accessible.c
index 09ddea8ffe..a98f69b7a5 100644
--- a/src/lib/elementary/elm_interface_atspi_accessible.c
+++ b/src/lib/elementary/elm_interface_atspi_accessible.c
@@ -609,4 +609,10 @@ _elm_interface_atspi_accessible_efl_object_destructor(Eo 
*obj, Elm_Interface_Ats
    efl_destructor(efl_super(obj, ELM_INTERFACE_ATSPI_ACCESSIBLE_MIXIN));
 }
 
+void
+_elm_interface_atspi_shutdown(void)
+{
+   ELM_SAFE_DEL(root);
+}
+
 #include "elm_interface_atspi_accessible.eo.c"
diff --git a/src/lib/elementary/elm_priv.h b/src/lib/elementary/elm_priv.h
index 6291b55144..8d905ca913 100644
--- a/src/lib/elementary/elm_priv.h
+++ b/src/lib/elementary/elm_priv.h
@@ -547,6 +547,8 @@ void                 _elm_win_wl_cursor_set(Evas_Object 
*obj, const char *cursor
 void _efl_ui_focus_manager_redirect_events_del(Efl_Ui_Focus_Manager *manager, 
Eo *obj);
 void _efl_ui_focus_manager_redirect_events_add(Efl_Ui_Focus_Manager *manager, 
Eo *obj);
 
+void _elm_interface_atspi_shutdown(void);
+
 /* Combobox: no proper support for Efl.Part API yet. */
 void        _elm_combobox_part_text_set(Eo *obj, const char * part, const char 
*label);
 const char *_elm_combobox_part_text_get(const Eo *obj, const char *part);

-- 


Reply via email to