I don't have an example just here now. Did you check tests of elementary_test? I just remember that there were a lot of prints. Maybe it has been fixed.
On 01/13/2014 03:32 PM, ryuan Choi wrote: > Weird, > > I tested little bit and ELM_WIDGET_CHECK with null object just printed > only one line complaint. > I thought that null object is wrong case which we should fix (or blame) > > Could you let me know more information or reproduce step to get a lot > of errors to ensure that my reading is wrong. > > Best Regards, > Ryuan Choi > > > > 2014/1/13 daniel.za...@samsung.com <mailto:daniel.za...@samsung.com> > <daniel.za...@samsung.com <mailto:daniel.za...@samsung.com>> > > Hi Ryuan, > > The problem here is that now you will have a lot of errors from > eo_isa and his brother. At least, this check was helping on this. > > JackDanielZ, alias Daniel the 3rd > > > On 01/13/2014 02:18 PM, Ryuan Choi wrote: > > ryuan pushed a commit to branch master. > > > http://git.enlightenment.org/core/elementary.git/commit/?id=4c3e23de9e46fd89672ab657f5da153a3c26a029 > > commit 4c3e23de9e46fd89672ab657f5da153a3c26a029 > Author: Ryuan Choi <ryuan.c...@gmail.com > <mailto:ryuan.c...@gmail.com>> > Date: Mon Jan 13 21:11:04 2014 +0900 > > Widget: Removed !obj checks from > ELM_WIDGET_DATA_GET_OR_RETURN and ELM_WIDGET_CHECK > eo_data_scope_get and eo_isa returns NULL with > complaint when NULL is passed. > So, Removed unnecessary !obj check routine. > In addition, adopt EINA_UNLIKELY for these macros > and fix indentation. > --- > src/lib/elm_widget.h | 16 +++++++--------- > 1 file changed, 7 insertions(+), 9 deletions(-) > > diff --git a/src/lib/elm_widget.h b/src/lib/elm_widget.h > index f7170f6..ded37bc 100644 > --- a/src/lib/elm_widget.h > +++ b/src/lib/elm_widget.h > @@ -801,19 +801,17 @@ EAPI void elm_widget_tree_dump(const > Evas_Object *top); > EAPI void elm_widget_tree_dot_dump(const > Evas_Object *top, FILE *output); > #define ELM_WIDGET_DATA_GET_OR_RETURN(o, ptr, ...) \ > - Elm_Widget_Smart_Data *ptr; \ > - ptr = (o ? \ > - eo_data_scope_get(o, ELM_OBJ_WIDGET_CLASS) :\ > - NULL); \ > - if (!ptr) \ > + Elm_Widget_Smart_Data *ptr; \ > + ptr = eo_data_scope_get(o, ELM_OBJ_WIDGET_CLASS); \ > + if (EINA_UNLIKELY(!ptr)) \ > { \ > - CRI("no widget data for object %p (%s)", \ > - o, evas_object_type_get(o)); \ > + CRI("no widget data for object %p (%s)", \ > + o, evas_object_type_get(o)); \ > return __VA_ARGS__; \ > } > -#define ELM_WIDGET_CHECK(obj) \ > - if (!obj || !eo_isa((obj), ELM_OBJ_WIDGET_CLASS)) \ > +#define ELM_WIDGET_CHECK(obj) \ > + if (EINA_UNLIKELY(!eo_isa((obj), ELM_OBJ_WIDGET_CLASS))) \ > return > /** > > > ------------------------------------------------------------------------------ CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments & Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel