Subject: [PATCH] change prevents the use of NULL as argument to aviod
 segfaults

Change-Id: I0fc9ac9229a145abfac1ecbfea57e48d5f21c01d
---
 trunk/eina/src/lib/eina_list.c     |    5 ++++-
 trunk/eina/src/lib/eina_quadtree.c |    2 ++
 trunk/eina/src/lib/eina_str.c      |    3 +++
 trunk/eina/src/lib/eina_tiler.c    |    4 ++++
 4 files changed, 13 insertions(+), 1 deletions(-)

diff --git a/trunk/eina/src/lib/eina_list.c b/trunk/eina/src/lib/eina_list.c
index ea5dfb9..81a4ffa 100644
--- a/trunk/eina/src/lib/eina_list.c
+++ b/trunk/eina/src/lib/eina_list.c
@@ -1034,7 +1034,8 @@ eina_list_sort(Eina_List *list, unsigned int limit, Eina_Compare_Cb func)
    Eina_List *unsort = NULL;
    Eina_List *stack[EINA_LIST_SORT_STACK_SIZE];
 
-   EINA_SAFETY_ON_NULL_RETURN_VAL(func, list);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(func, NULL);
+
    if (!list)
      return NULL;
 
@@ -1466,6 +1467,8 @@ eina_list_accessor_new(const Eina_List *list)
 {
    Eina_Accessor_List *ac;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(list, NULL);
+
    eina_error_set(0);
    ac = calloc(1, sizeof (Eina_Accessor_List));
    if (!ac)
diff --git a/trunk/eina/src/lib/eina_quadtree.c b/trunk/eina/src/lib/eina_quadtree.c
index f0a2dd4..e163e6f 100644
--- a/trunk/eina/src/lib/eina_quadtree.c
+++ b/trunk/eina/src/lib/eina_quadtree.c
@@ -875,6 +875,8 @@ eina_quadtree_increase(Eina_QuadTree_Item *object)
 {
    size_t tmp;
 
+   EINA_MAGIC_CHECK_QUADTREE_ITEM(object);
+
    tmp = object->quad->index++;
    if (object->index == tmp)
       return;
diff --git a/trunk/eina/src/lib/eina_str.c b/trunk/eina/src/lib/eina_str.c
index 2a54c00..02f9979 100644
--- a/trunk/eina/src/lib/eina_str.c
+++ b/trunk/eina/src/lib/eina_str.c
@@ -544,6 +544,9 @@ eina_str_escape(const char *str)
    char *s2, *d;
    const char *s;
 
+   if(!str)
+      return NULL;
+
    s2 = malloc((strlen(str) * 2) + 1);
    if (!s2)
       return NULL;
diff --git a/trunk/eina/src/lib/eina_tiler.c b/trunk/eina/src/lib/eina_tiler.c
index 155b0e0..8c06075 100644
--- a/trunk/eina/src/lib/eina_tiler.c
+++ b/trunk/eina/src/lib/eina_tiler.c
@@ -1151,6 +1151,8 @@ EAPI Eina_Bool eina_tiler_rect_add(Eina_Tiler *t, const Eina_Rectangle *r)
    Eina_Rectangle tmp;
 
    EINA_MAGIC_CHECK_TILER(t, EINA_FALSE);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(r, EINA_FALSE);
+
    if ((r->w <= 0) || (r->h <= 0))
       return EINA_FALSE;
 
@@ -1169,6 +1171,8 @@ EAPI void eina_tiler_rect_del(Eina_Tiler *t, const Eina_Rectangle *r)
    Eina_Rectangle tmp;
 
    EINA_MAGIC_CHECK_TILER(t);
+   EINA_SAFETY_ON_NULL_RETURN(r);
+
    if ((r->w <= 0) || (r->h <= 0))
       return;
 
-- 
1.7.6.3

