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

Re: [PATCH] refs: print errno for read_raw_ref if GIT_TRACE_REFS is set

From
Junio C Hamano <gitster@pobox.com>
Date
Apr 12, 2021, 21:45 UTC
Message-ID
<xmqq4kgbb2ic.fsf@gitster.g>
In-Reply-To
<pull.1002.git.git.1618255954484.gitgitgadget@gmail.com>
"Han-Wen Nienhuys via GitGitGadget" <gitgitgadget@gmail.com> writes:
Show 21 quoted lines
> diff --git a/refs/debug.c b/refs/debug.c
> index 922e64fa6ad9..576bf98e74ae 100644
> --- a/refs/debug.c
> +++ b/refs/debug.c
> @@ -244,6 +244,7 @@ static int debug_read_raw_ref(struct ref_store *ref_store, const char *refname,
>  	int res = 0;
>  
>  	oidcpy(oid, &null_oid);
> +	errno = 0;
>  	res = drefs->refs->be->read_raw_ref(drefs->refs, refname, oid, referent,
>  					    type);
>  
> @@ -251,7 +252,9 @@ static int debug_read_raw_ref(struct ref_store *ref_store, const char *refname,
>  		trace_printf_key(&trace_refs, "read_raw_ref: %s: %s (=> %s) type %x: %d\n",
>  			refname, oid_to_hex(oid), referent->buf, *type, res);
>  	} else {
> -		trace_printf_key(&trace_refs, "read_raw_ref: %s: %d\n", refname, res);
> +		trace_printf_key(&trace_refs,
> +				 "read_raw_ref: %s: %d (errno %d)\n", refname,
> +				 res, errno);
>  	}

OK. Between trace_printf_key() and the return of the call to read_raw_ref() method of the ref backend is only an "if (res == 0)" condition and I do not see anything that might clobber errno.

I do wonder if we want strerror(errno) instead of the number, but I can go either way (it's just a trace output).

Thanks, will queue.
Previous: Han-Wen Nienhuys via GitGitGadgetNext: Han-Wen Nienhuys
Message 2 of 7 in “refs: print errno for read_raw_ref if GIT_TRACE_REFS is set”
  1. refs: print errno for read_raw_ref if GIT_TRACE_REFS is setHan-Wen Nienhuys via GitGitGadget, Apr 12, 2021
  2. Junio C HamanoApr 12, 2021
  3. Han-Wen NienhuysApr 13, 2021
  4. Han-Wen NienhuysApr 13, 2021
  5. Junio C HamanoApr 13, 2021
  6. Han-Wen NienhuysApr 23, 2021
  7. refs: print errno for read_raw_ref if GIT_TRACE_REFS is setHan-Wen Nienhuys via GitGitGadget, Apr 13, 2021

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.