summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Hacohen <tom@stosb.com>2013-04-12 17:17:30 +0100
committerTom Hacohen <tom@stosb.com>2013-04-12 17:17:38 +0100
commit269e3a779753cd964ef53c7161a438f841b87d47 (patch)
tree900b2101f333d78e53269c085c5c1b51eb2d9eb0
parent6b70dd57d3119797988f3ec028c3dda22a0c3e90 (diff)
downloadefl-269e3a779753cd964ef53c7161a438f841b87d47.tar.gz
Eo: Fixed an error in in _eo_callback_remove and a few minor things.
The other things are not really issues but more about silencing clang. Thanks to clang-analyzer.
-rw-r--r--src/lib/eo/eo.c6
-rw-r--r--src/lib/eo/eo_base_class.c5
2 files changed, 7 insertions, 4 deletions
diff --git a/src/lib/eo/eo.c b/src/lib/eo/eo.c
index 0b02c088ba..d149cee985 100644
--- a/src/lib/eo/eo.c
+++ b/src/lib/eo/eo.c
@@ -366,13 +366,13 @@ _eo_dov_internal(Eo *obj, Eo_Op_Type op_type, va_list *p_list)
op = va_arg(*p_list, Eo_Op);
}
- _eo_unref(obj);
-
if (obj->do_error)
ret = EINA_FALSE;
obj->do_error = prev_error;
+ _eo_unref(obj);
+
return ret;
}
@@ -1495,8 +1495,8 @@ eo_composite_attach(Eo *comp_obj, Eo *parent)
EO_MAGIC_RETURN(parent, EO_EINA_MAGIC);
comp_obj->composite = EINA_TRUE;
- eo_parent_set(comp_obj, parent);
parent->composite_objects = eina_list_prepend(parent->composite_objects, comp_obj);
+ eo_parent_set(comp_obj, parent);
}
EAPI void
diff --git a/src/lib/eo/eo_base_class.c b/src/lib/eo/eo_base_class.c
index 389fae9686..2b5b69c671 100644
--- a/src/lib/eo/eo_base_class.c
+++ b/src/lib/eo/eo_base_class.c
@@ -281,7 +281,10 @@ _eo_callback_remove(Private_Data *pd, Eo_Callback_Description *cb)
}
free(titr);
}
- pitr = titr;
+ else
+ {
+ pitr = titr;
+ }
}
}