efl_ui_win: Fix null pointer dereference
authorChristopher Michael <devilhorns@comcast.net>
Mon, 9 Mar 2020 13:03:58 +0000 (09:03 -0400)
committerTaehyub Kim <taehyub.kim@samsung.com>
Tue, 10 Mar 2020 11:08:53 +0000 (20:08 +0900)
Fixes Coverity CID1420329 and CID1420328

src/lib/elementary/efl_ui_win.c

index c7864e8..b9014ff 100644 (file)
@@ -11007,14 +11007,20 @@ _drop_event_unregister(Eo *obj)
 void
 _selection_changed_event_register(Eo *obj)
 {
-   Efl_Ui_Win_Data *pd = efl_data_scope_safe_get(efl_provider_find(obj, MY_CLASS), MY_CLASS);
+   Efl_Ui_Win_Data *pd;
+
+   pd = efl_data_scope_safe_get(efl_provider_find(obj, MY_CLASS), MY_CLASS);
+   if (!pd) return;
 
    eina_array_push(pd->selection_changed, obj);
 }
 void
 _selection_changed_event_unregister(Eo *obj)
 {
-   Efl_Ui_Win_Data *pd = efl_data_scope_safe_get(efl_provider_find(obj, MY_CLASS), MY_CLASS);
+   Efl_Ui_Win_Data *pd;
+
+   pd = efl_data_scope_safe_get(efl_provider_find(obj, MY_CLASS), MY_CLASS);
+   if (!pd) return;
 
    eina_array_remove(pd->selection_changed, _remove, obj);
 }