e_path: fix bug detected by static analysis tool
authorDoyoun Kang <doyoun.kang@samsung.com>
Mon, 17 Jul 2017 12:15:25 +0000 (21:15 +0900)
committerDoyoun Kang <doyoun.kang@samsung.com>
Tue, 18 Jul 2017 02:25:19 +0000 (11:25 +0900)
Change-Id: I6f7554bbc2adb1b0eaa003a66a3dfa9f341b4b85

src/bin/e_path.c

index 04efc2eba18def5e1cae24079bc813be660c81f4..349a08ed30f8085b037ef062bb7990cc701bbce6 100644 (file)
@@ -325,16 +325,22 @@ e_path_dir_list_get(E_Path *ep)
         EINA_LIST_FOREACH(*(ep->user_dir_list), l, epd)
           {
              new_epd = malloc(sizeof(E_Path_Dir));
-             new_epd->dir = eina_stringshare_add(epd->dir);
-             dir_list = eina_list_append(dir_list, new_epd);
+             if (new_epd)
+               {
+                  new_epd->dir = eina_stringshare_add(epd->dir);
+                  dir_list = eina_list_append(dir_list, new_epd);
+               }
           }
      }
 
    EINA_LIST_FOREACH(ep->default_dir_list, l, epd)
      {
         new_epd = malloc(sizeof(E_Path_Dir));
-        new_epd->dir = eina_stringshare_add(epd->dir);
-        dir_list = eina_list_append(dir_list, new_epd);
+        if (new_epd)
+          {
+             new_epd->dir = eina_stringshare_add(epd->dir);
+             dir_list = eina_list_append(dir_list, new_epd);
+          }
      }
 
    return dir_list;