Re: g_error_free() warning on null pointer
- Date: Sun, 16 Aug 2015 10:25:32 +0200
- From: Sébastien Wilmet <swilmet@xxxxxxxxx>
- Subject: Re: g_error_free() warning on null pointer
On Sat, Aug 15, 2015 at 01:52:02PM -0700, Jasper St. Pierre wrote:
> Lots of things in GLib fail when passed a NULL pointer, like g_object_unref.
> The idea is that passing a NULL pointer is probably a sign of a bug
> somewhere, so you shouldn't do it.
No, accepting a NULL pointer for "free functions" is for convenience. At
the beginning of the block, you initialize your variables at NULL, and
at the end of the block (maybe after a goto label) you free the
variables that need to be freed. It's not a sign of a bug…
Consistency is important for a library. It's much simpler to remember
"all free/unref functions accept NULL" instead of "free/g_free accept
NULL, g_object_unref not, g_clear_object yes, etc etc".
gtk-devel-list mailing list