On Mon, Dec 29, 2008 at 2:53 PM, Gustavo Sverzut Barbieri <barbi...@profusion.mobi> wrote: > On Mon, Dec 29, 2008 at 11:38 AM, Cedric BAIL <cedric.b...@free.fr> wrote: >> On Mon, Dec 29, 2008 at 2:02 PM, Gustavo Sverzut Barbieri >> <barbi...@profusion.mobi> wrote: >>> On Mon, Dec 29, 2008 at 10:41 AM, Enlightenment SVN >>> <no-re...@enlightenment.org> wrote: >>>> Log: >>>> Don't generate warning in some little case. >>> >>> I strongly disagree with this patch. Eina Hash is not like Evas Hash, >>> by hiding this "warnings in some little case" we're hiding bugs. It's >>> better to fix those bugs and not hide these warnings. >> >>> We add these safety checks to avoid our libraries crashing badly on >>> users, not because API should really support these NULL pointers, >>> they're invalid values. It's like strlen(NULL), it does not make >>> sense. >> >> That's the typical case I want to avoid adding extra if around place >> where returning 0 would have make sense. I didn't remove all check >> only on find and population, typically used by cache system. > > it's not a useless if, it's a error handling if, you must do it. > > and this error checking should be done after eina_hash_new() and like, > not before these other calls, unless you can work without the hash, in > tha case you must do this special case anyway. > > if people start to use few eina_hash_new() as it is supposed to be > instead of delete it when it's empty and create it before each add, > then this will be one if at the constructor and that's all.
It's not always possible to do so. For example eet doesn't initialize part of a structure if it doesn't find any element for it and I don't see an easy way to fix that. -- Cedric BAIL ------------------------------------------------------------------------------ _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel