From: Jeff King Date: Fri, 05 Sep 2025 13:15:13 GMT Subject: Re: [PATCH v5] alloc: fix dangling pointer in alloc_state cleanup Message-ID: <20250905131513.GB596956@coredump.intra.peff.net> In-Reply-To: On Thu, Sep 04, 2025 at 03:26:21PM -0700, Junio C Hamano wrote: > Jeff King writes: > > > It's probably not worth going back and forth on this too much, but I > > thought the happy medium was: > > > > if (!s) > > return; > > > > That is, it is perfectly reasonable and friendly for it to be a noop to > > free-and-null a NULL value (either never initialized, or already freed). > > The overkill was worrying about whether somebody passed in a NULL > > double-pointer. I.e., doing: > > > > alloc_state_free_and_null(&foo); > > > > is reasonable and should be idempotent > > ... when foo == NULL, e.g., after alloc_state_free_and_null(&foo) > has just successfully returned? Exactly. > I can by that argument with the reasoning in the updated log message > below. Does it good to everybody? Yep, it looks good to me. -Peff