elm/win: check object class before using it
authorShinwoo Kim <cinoo.kim@samsung.com>
Mon, 20 Aug 2018 07:19:02 +0000 (16:19 +0900)
committerWoochanlee <wc0917.lee@samsung.com>
Thu, 23 Aug 2018 06:42:29 +0000 (15:42 +0900)
Summary:
elm_win_focus_get with non Efl.Ui.Win object could return incorrect value.
If an object implements Efl.Ui.Focus.Object.focus { get; } then the return
value of elm_win_focus_get with this object depends upon the object status.

Reviewers: Hermet, YOhoho

Reviewed By: YOhoho

Subscribers: cedric, #reviewers, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6868

src/lib/elementary/efl_ui_win.c

index 27236ae..73791d4 100644 (file)
@@ -10021,6 +10021,7 @@ elm_win_socket_listen(Efl_Ui_Win *obj, const char *svcname, int svcnum, Eina_Boo
 EAPI Eina_Bool
 elm_win_focus_get(const Efl_Ui_Win *obj)
 {
+   EINA_SAFETY_ON_FALSE_RETURN_VAL(efl_isa(obj, MY_CLASS), EINA_FALSE);
    //TIZEN_ONLY(20180607): Restore legacy focus
    if (elm_widget_is_legacy(obj))
      {