On Fri, 18 Jul 2014 04:59:05 +0100 Tom Hacohen <tom.haco...@samsung.com> said:
> On 18/07/14 04:48, Carsten Haitzler (The Rasterman) wrote: > > On Tue, 8 Jul 2014 14:16:41 +0200 Jérémy Zurcher <jer...@asynk.ch> said: > > > >> original thread is: [e-users] Func 'edje_obj_signal_emit' unknown in class > >> 'Evas_Smart' > >> > >> On Tuesday 08 July 2014 20:18, Carsten Haitzler wrote : > >>> On Tue, 8 Jul 2014 10:32:24 +0200 Jérémy Zurcher <jer...@asynk.ch> said: > >>>> > >>>> shouldn't we even add WRN() to eo_do(NULL, ... ) calls ?? > >>>> loads of them in elm because of NULL wd->resize_obj. > >>> > >>> nah - it's one thing calling an unsupported method on an object - you > >>> intended for the obj to do X or Y. for a null object - no object, there > >>> simply is nothing to do. it's barely an issue. i'd say its not valuable to > >>> say anything. > >>> > >> > >> there is nothing to do, but we do a lot, > >> set an eo call stack frame with NULL in it, > >> go through all function calls, returning default value at _eo_call_resolve > >> () free the call stack frame. > >> > >> a side effect of the will to be able to write: a = eo_do(obj, a_get()); > >> http://git.enlightenment.org/core/efl.git/commit/?id=d77a7ce4 > > > > i thought that eo_do by definition has no return... in the macros it doesnt > > indicate it has one and doesn't document a reutnr - so that shouldn't work. > > imho eo_do(NULL ...) should just instantly return with no further action. > > > > Things have improved over the last few months. First of all, it's now > perfect legal to call: > a = eo_do(obj, a_get()); i thought you had to do: eo_do(obj, a = a_get()); ? it doesn't sound good to me to make this legal... ? > Iirc a = eo_do(obj, a_get(), b = b_get()); is also legal, but I'll have > to check. > > As for the matter at hand, eo_do does need to do things with > NULL/illegal objects so you don't have uninitialized value. That is: > eo_do(NULL, a = a_get()); > > Sets a to the default return value defined when defining a_get. This > ensures that a will always be initialized no matter what object passed. > This allows us to use a similar style of coding to what we do at the > moment, with just passing null objects to functions and expecting > reasonable return vals. > > -- > Tom. > > > > > ------------------------------------------------------------------------------ > Want fast and easy access to all the code in your enterprise? Index and > search up to 200,000 lines of code with a free copy of Black Duck > Code Sight - the same software that powers the world's largest code > search on Ohloh, the Black Duck Open Hub! Try it now. > http://p.sf.net/sfu/bds > _______________________________________________ > enlightenment-devel mailing list > enlightenment-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- ------------- Codito, ergo sum - "I code, therefore I am" -------------- The Rasterman (Carsten Haitzler) ras...@rasterman.com ------------------------------------------------------------------------------ Want fast and easy access to all the code in your enterprise? Index and search up to 200,000 lines of code with a free copy of Black Duck Code Sight - the same software that powers the world's largest code search on Ohloh, the Black Duck Open Hub! Try it now. http://p.sf.net/sfu/bds _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel