raster pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=fc3c8a3296e74170e64b7b2969927179ecbbc3c8

commit fc3c8a3296e74170e64b7b2969927179ecbbc3c8
Author: Carsten Haitzler (Rasterman) <ras...@rasterman.com>
Date:   Sun Oct 25 11:23:04 2015 +0900

    eo - make null object silent if eo id is off
    
    with eo id indirection on, a nul object is silently ignored as anok
    error case (like free(NULL)). but if you turne eoid off in build its
    all complaints to here and the black stump. fix this by making the eo
    id "off" path match eo id on by making null objects silent.
    
    @fix
---
 src/lib/eo/eo_ptr_indirection.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/lib/eo/eo_ptr_indirection.h b/src/lib/eo/eo_ptr_indirection.h
index aa169f7..e831a4a 100644
--- a/src/lib/eo/eo_ptr_indirection.h
+++ b/src/lib/eo/eo_ptr_indirection.h
@@ -60,6 +60,7 @@
    _Eo_Object *obj; \
    do { \
         obj = _eo_obj_pointer_get((Eo_Id)obj_id); \
+        if (!obj) return (ret); \
         EO_MAGIC_RETURN_VAL((Eo_Header *) obj, EO_EINA_MAGIC, ret);  \
    } while (0)
 
@@ -67,6 +68,7 @@
    _Eo_Object *obj; \
    do { \
         obj = _eo_obj_pointer_get((Eo_Id)obj_id);   \
+        if (!obj) return; \
         EO_MAGIC_RETURN((Eo_Header *) obj, EO_EINA_MAGIC);  \
    } while (0)
 
@@ -74,6 +76,7 @@
    _Eo_Class *klass; \
    do { \
         klass = _eo_class_pointer_get(klass_id); \
+        if (!klass) return (ret); \
         EO_MAGIC_RETURN_VAL((Eo_Header *) klass, EO_CLASS_EINA_MAGIC, ret);  \
    } while (0)
 
@@ -81,6 +84,7 @@
    _Eo_Class *klass; \
    do { \
         klass = _eo_class_pointer_get(klass_id); \
+        if (!klass) return; \
         EO_MAGIC_RETURN((Eo_Header *) klass, EO_CLASS_EINA_MAGIC);  \
    } while (0)
 

-- 


Reply via email to