edje: fix coverity defects
authorGwanglim Lee <gl77.lee@samsung.com>
Wed, 6 Aug 2014 09:55:32 +0000 (10:55 +0100)
committerDaniel Kolesa <d.kolesa@samsung.com>
Wed, 6 Aug 2014 09:55:32 +0000 (10:55 +0100)
Summary:
CID 1214113: logically dead code
CID 1230295: dereference null return value
CID 1230296: use after free
@fix

Test Plan: N/A

Reviewers: raster, cedric, jpeg, q66

Reviewed By: q66

Subscribers: cedric

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

src/bin/edje/edje_cc_handlers.c
src/bin/edje/edje_cc_parse.c
src/lib/edje/edje_smart.c

index 8642e80..c46da33 100644 (file)
@@ -5582,9 +5582,9 @@ static void st_collections_group_parts_part_box_items_item_type(void)
        s = parse_str(0);
        if (strcmp(s, "GROUP"))
          {
+             ERR("parse error %s:%i. token %s not one of: GROUP.",
+                 file_in, line - 1, s);
             free(s);
-            ERR("parse error %s:%i. token %s not one of: GROUP.",
-                file_in, line - 1, s);
             exit(-1);
          }
        free(s);
index b0b5ba4..14546c1 100644 (file)
@@ -715,14 +715,6 @@ parse(char *data, off_t size)
                     }
                   else
                     {
-                       if (do_params)
-                         {
-                            ERR("parse error %s:%i. additional parameters required for '%s' statement",
-                                file_in, line - 1, (char*)eina_list_last_data_get(stack));
-                            err_show();
-                            exit(-1);
-                         }
-
                        if (new_statement_single())
                          stack_pop();
                     }
index 6be14de..816d2d5 100644 (file)
@@ -295,7 +295,7 @@ _edje_object_evas_object_smart_show(Eo *obj, Edje *ed)
 
              if (edg == ed) continue;
              rp = evas_object_data_get(edg->obj, "\377 edje.part_obj");
-             if (rp->chosen_description->visible)
+             if ((rp) && (rp->chosen_description->visible))
                evas_object_show(edg->obj);
           }
      }