barbieri pushed a commit to branch master.

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

commit 79d44f212eb8f2dc774fe9528bad6af6c5418bce
Author: Gustavo Sverzut Barbieri <[email protected]>
Date:   Tue Dec 6 14:24:59 2016 -0200

    eo: guard all efl_super() checks under EO_DEBUG.
    
    Tom is worried about performance hit (god, checking a bit in a pointer
    we'll fetch to memory anyway, since we return it masked), so guard
    under EO_DEBUG.
---
 src/lib/eo/eo.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib/eo/eo.c b/src/lib/eo/eo.c
index 9c9a163..3e1a727 100644
--- a/src/lib/eo/eo.c
+++ b/src/lib/eo/eo.c
@@ -373,8 +373,8 @@ efl_super(const Eo *obj, const Efl_Class *cur_klass)
 {
    EO_CLASS_POINTER_GOTO(cur_klass, klass, err);
 
-   if (EINA_UNLIKELY(!_eo_is_a_obj(obj) && !_eo_is_a_class(obj))) goto err_obj;
 #ifdef EO_DEBUG
+   if (EINA_UNLIKELY(!_eo_is_a_obj(obj) && !_eo_is_a_class(obj))) goto err_obj;
    if (EINA_UNLIKELY(!efl_isa(obj, cur_klass))) goto err_obj_hierarchy;
 #endif
 
@@ -386,10 +386,10 @@ efl_super(const Eo *obj, const Efl_Class *cur_klass)
 err:
    _EO_POINTER_ERR(cur_klass, "Class (%p) is an invalid ref.", cur_klass);
    return NULL;
+#ifdef EO_DEBUG
 err_obj:
    _EO_POINTER_ERR(obj, "Object (%p) is an invalid ref, class=%p (%s).", obj, 
cur_klass, efl_class_name_get(cur_klass));
    return NULL;
-#ifdef EO_DEBUG
 err_obj_hierarchy:
    _EO_POINTER_ERR(obj, "Object (%p) class=%p (%s) is not an instance of 
class=%p (%s).", obj, efl_class_get(obj), efl_class_name_get(obj), cur_klass, 
efl_class_name_get(cur_klass));
 #endif

-- 


Reply via email to