git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] refs: release strbuf after use in check_refname_component()

From
Jeff King <peff@peff.net>
Date
Dec 29, 2014, 21:13 UTC
Message-ID
<20141229211312.GA26793@peff.net>
In-Reply-To
<xmqq387y1hnc.fsf@gitster.dls.corp.google.com>
On Mon, Dec 29, 2014 at 09:37:43AM -0800, Junio C Hamano wrote:
Show 23 quoted lines
> René Scharfe <l.s.r@web.de> writes:
> 
> > Signed-off-by: Rene Scharfe <l.s.r@web.de>
> > ---
> >  refs.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/refs.c b/refs.c
> > index 5fcacc6..ed3b2cb 100644
> > --- a/refs.c
> > +++ b/refs.c
> > @@ -2334,7 +2334,7 @@ static struct ref_lock *lock_ref_sha1_basic(const char *refname,
> >  			struct strbuf err = STRBUF_INIT;
> >  			unable_to_lock_message(ref_file, errno, &err);
> >  			error("%s", err.buf);
> > -			strbuf_reset(&err);
> > +			strbuf_release(&err);
> >  			goto error_return;
> >  		}
> >  	}
> 
> The subject does not seem to match what the patch is doing, but the
> patch is obviously correct ;-)
The worst part of this is that I got it right in my hacked-up version:
  http://article.gmane.org/gmane.comp.version-control.git/259853

but then after much discussion, we dropped all of the lead-in patches, and I sent Ronnie's unedited:

  http://article.gmane.org/gmane.comp.version-control.git/259911

All that looking and I didn't notice the release/reset difference between our two versions. Sheesh.

Which is all a roundabout way of saying "yes, René's patch is obviously correct". :)

-Peff
Previous: Junio C Hamano
Message 3 of 3 in “refs: release strbuf after use in check_refname_component()”
  1. refs: release strbuf after use in check_refname_component()René Scharfe, Dec 24, 2014
  2. Junio C HamanoDec 29, 2014
  3. Jeff KingDec 29, 2014

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.