# [PATCH] archive: fix misleading error message

2 messages from 2024-10-03 to 2024-10-04. Participants: René Scharfe, Martin Ågren.
Thread: https://gitlist.dev/t/62247

## René Scharfe, 2024-10-03 15:51

Subject: [PATCH] archive: fix misleading error message
Message-ID: <faed1d0e-86a8-4dcd-a27f-19dcd9f89f37@web.de>
URL: https://gitlist.dev/e/faed1d0e-86a8-4dcd-a27f-19dcd9f89f37%40web.de

```
The error message added by 296743a7ca (archive: load index before
pathspec checks, 2024-09-21) is misleading: unpack_trees() is not
touching the working tree at all here, but just loading a tree into
the index.  Correct it.

Signed-off-by: René Scharfe <l.s.r@web.de>
---
Silly me, I stole the wrong message. :-/

 archive.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/archive.c b/archive.c
index 58f86bf75c..a7a92ff839 100644
--- a/archive.c
+++ b/archive.c
@@ -536,7 +536,8 @@ static void parse_treeish_arg(const char **argv,
 		opts.fn = oneway_merge;
 		init_tree_desc(&t, &tree->object.oid, tree->buffer, tree->size);
 		if (unpack_trees(1, &t, &opts))
-			die(_("unable to checkout working tree"));
+			die(_("failed to unpack tree object %s"),
+			    oid_to_hex(&tree->object.oid));

 		git_attr_set_direction(GIT_ATTR_INDEX);
 	}
--
2.46.2

```

## Martin Ågren, 2024-10-04 10:07

Subject: Re: [PATCH] archive: fix misleading error message
Message-ID: <CAN0heSoN-iEdzj1BTw6eRDvRzLkK_oXdSwaG=hxeZUQiYvWZUg@mail.gmail.com>
URL: https://gitlist.dev/e/CAN0heSoN-iEdzj1BTw6eRDvRzLkK_oXdSwaG%3DhxeZUQiYvWZUg%40mail.gmail.com
In-Reply-To: <faed1d0e-86a8-4dcd-a27f-19dcd9f89f37@web.de>

```
On Thu, 3 Oct 2024 at 17:51, René Scharfe <l.s.r@web.de> wrote:
>
> The error message added by 296743a7ca (archive: load index before
> pathspec checks, 2024-09-21) is misleading: unpack_trees() is not
> touching the working tree at all here, but just loading a tree into
> the index.  Correct it.

>                 init_tree_desc(&t, &tree->object.oid, tree->buffer, tree->size);
>                 if (unpack_trees(1, &t, &opts))
> -                       die(_("unable to checkout working tree"));
> +                       die(_("failed to unpack tree object %s"),
> +                           oid_to_hex(&tree->object.oid));

The existing instance of this message isn't translated, so it'll still
be a new string to translate. Anyway, it's good to use the same wording
here as elsewhere.

There's also a "failed to unpack trees", but here, we're indeed
unpacking *one* tree.

Good catch!

Martin

```
