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

Re: [PATCH] revision.c: Clarify error message for missing objects

From
Junio C Hamano <gitster@pobox.com>
Date
Mar 14, 2011, 17:40 UTC
Message-ID
<7vsjupeh20.fsf@alter.siamese.dyndns.org>
In-Reply-To
<4D7E303A.5090605@elegosoft.com>
Jakob Pfender <jpfender@elegosoft.com> writes:
> This patch introduces a check to see whether an object exists (with the
> appropriate error message if it doesn't) and removes the unnecessary and
> misleading original error message if parse_object() fails.
How does this interact with object replacement?
I suspect the real issue is in read_sha1_file_repl() that says:
    /*
     * This function dies on corrupt objects; the callers who want to
     * deal with them should arrange to call read_object() and give error
     * messages themselves.
     */

without giving sufficient support for the callers that wish to use read_object() themselves to implement the object replacement logic.

Show 22 quoted lines
> Signed-off-by: Jakob Pfender <jpfender@elegosoft.com>
> ---
>  revision.c |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/revision.c b/revision.c
> index 86d2470..085aac2 100644
> --- a/revision.c
> +++ b/revision.c
> @@ -173,9 +173,9 @@ static struct object *get_reference(struct
> rev_info *revs, const char *name, con
>  {
>      struct object *object;
>
> +    if (sha1_object_info(sha1, NULL) < 0)
> +        die("Not a valid object name %s", name);
>      object = parse_object(sha1);
> -    if (!object)
> -        die("bad object %s", name);
>      object->flags |= flags;
>      return object;
>  }
Previous: Jakob Pfender
Message 3 of 3 in “[Buglet] "git show <random-40-hexdigit>" gives an unclear error message”
  1. Junio C HamanoMar 11, 2011
  2. revision.c: Clarify error message for missing objectsJakob Pfender, Mar 14, 2011
  3. Junio C HamanoMar 14, 2011

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.