Hi,

You are right, it is better if it can be returned as out. This macro is 
internal just to concentrate the eo_data_get. Before, it was a little 
bigger because of backward compatibility. Now I think we can remove it.

Anyway, if we keep it, I thought changing the name of this macro to 
ELM_WIDGET_DATA_RETURN(). Good?

I remove the eo_isa too. We just need there the o? to avoid too much 
prints on NULL objects.

On 12/17/2012 04:16 PM, Tom Hacohen wrote:
> Hey Gustavo,
>
> eo_data_get_from_type already exists, it's called eo_data_get. eo_data_get
> already handles everything that's needed to be handled and already reports
> an error when it's the wrong type.
>
> As for this macro, it looks very bad. I would at the very minimum take "wd
> = " outside of it, as it's *very* confusing atm.
>
> Daniel, any comments on this macro and it's usage/existence in the EFL?
>
>
>
> On Mon, Dec 17, 2012 at 2:04 PM, Gustavo Sverzut Barbieri <
> barbi...@profusion.mobi> wrote:
>
>> On Mon, Dec 17, 2012 at 11:53 AM, Stefan Schmidt <s.schm...@samsung.com>
>> wrote:
>>> Hello.
>>>
>>> I'm just investigating some potential NULL dereferencing in elm_widget
>> and I
>>> wanted to get an opinion on that from Glima and maybe the EO devs.
>>>
>>> The root problem is this macro:
>>>
>>> #define ELM_WIDGET_DATA_GET_NO_INST(o, wd)     \
>>>    wd = (o && eo_isa(o, ELM_OBJ_WIDGET_CLASS) ? \
>>>          eo_data_get(o, ELM_OBJ_WIDGET_CLASS) : \
>>>          NULL)
>> did not look into your patch, but i guess that the above macro is so
>> common that eo should provide something like that by default:
>>
>>      wd = eo_data_get_from_type(o, TYPE_CLASS);
>>
>> name is open to discussion, but the ability to type check and get its
>> private data is very good. It could even do the eina_log and warn of
>> null pointer or wrong type, saving users some repetitive code to do
>> so.
>>
>> --
>> Gustavo Sverzut Barbieri
>> http://profusion.mobi embedded systems
>> --------------------------------------
>> MSN: barbi...@gmail.com
>> Skype: gsbarbieri
>> Mobile: +55 (19) 9225-2202
>>
>>
>> ------------------------------------------------------------------------------
>> LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
>> Remotely access PCs and mobile devices and provide instant support
>> Improve your efficiency, and focus on delivering more value-add services
>> Discover what IT Professionals Know. Rescue delivers
>> http://p.sf.net/sfu/logmein_12329d2d
>> _______________________________________________
>> enlightenment-devel mailing list
>> enlightenment-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>>
>
>


------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to