On Tue, 23 Aug 2022 at 13:17, David Rowley <dgrowle...@gmail.com> wrote: > I think making pfree() accept NULL is a bad idea.
One counter argument to that is for cases like list_free_deep(). Right now if I'm not mistaken there's a bug (which I just noticed) in list_free_private() that would trigger if you have a List of Lists and one of the inner Lists is NIL. The code in list_free_private() just seems to go off and pfree() whatever is stored in the element, which I think would crash if it found a NIL List. If pfree() was to handle NULLs at least that wouldn't have been a crash, but in reality, we should probably fix that with recursion if we detect the element IsA List type. If we don't use recursion, then the "free" does not seem very "deep". (Or maybe it's too late to make it go deeper as it might break existing code.) David