* eina/src/include/eina_private.h,
authorcedric <cedric>
Tue, 20 Jan 2009 15:44:52 +0000 (15:44 +0000)
committercedric <cedric@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Tue, 20 Jan 2009 15:44:52 +0000 (15:44 +0000)
* eina/src/lib/eina_array.c: Remove potential error detected by llvm in eina_array.

git-svn-id: http://svn.enlightenment.org/svn/e/trunk/eina@38662 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/include/eina_private.h
src/lib/eina_array.c

index bf644aa..7215ab5 100644 (file)
   } while(0);
 
 #define MAGIC_FREE(ptr)                                        \
-  do {                                                 \
+  if (ptr) {                                           \
      EINA_MAGIC_SET(ptr, EINA_MAGIC_NONE);             \
      FREE(ptr);                                                \
-  } while(0);
-
+  }
 
 #endif /* EINA_PRIVATE_H_ */
 
index 207eaeb..a6f22b9 100644 (file)
@@ -94,6 +94,7 @@ eina_array_iterator_next(Eina_Iterator_Array *it, void **data)
 {
    EINA_MAGIC_CHECK_ARRAY_ITERATOR(it);
 
+   if (!it) return EINA_FALSE;
    if (!(it->index < eina_array_count_get(it->array)))
      return EINA_FALSE;
    if (data)
@@ -106,7 +107,7 @@ static Eina_Array *
 eina_array_iterator_get_container(Eina_Iterator_Array *it)
 {
    EINA_MAGIC_CHECK_ARRAY_ITERATOR(it);
-   return (Eina_Array *) it->array;
+   return it ? (Eina_Array *) it->array : NULL;
 }
 
 static void
@@ -121,6 +122,7 @@ eina_array_accessor_get_at(Eina_Accessor_Array *it, unsigned int index, void **d
 {
    EINA_MAGIC_CHECK_ARRAY_ACCESSOR(it);
 
+   if (!it) return EINA_FALSE;
    if (!(index < eina_array_count_get(it->array)))
      return EINA_FALSE;
    if (data)
@@ -132,7 +134,7 @@ static Eina_Array *
 eina_array_accessor_get_container(Eina_Accessor_Array *it)
 {
    EINA_MAGIC_CHECK_ARRAY_ACCESSOR(it);
-   return (Eina_Array *) it->array;
+   return it ? (Eina_Array *) it->array : NULL;
 }
 
 static void