Commit 58f2ed0 (remote-curl: pass ref SHA-1 to fetch-pack as well,
2013-12-05) added support for specifying a SHA-1 as well as a ref name.
Add support for specifying just a SHA-1 and set the ref name to the same
value in this case.
Signed-off-by: Gabriel Souza Franco <redacted>
---
Not the cleanest conditional I've ever written, but it should handle
all cases correctly.
builtin/fetch-pack.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/builtin/fetch-pack.c b/builtin/fetch-pack.c
index 79a611f..763f510 100644
--- a/builtin/fetch-pack.c
+++ b/builtin/fetch-pack.c
@@ -16,10 +16,12 @@ static void add_sought_entry(struct ref ***sought, int *nr, int *alloc,
struct ref *ref;
struct object_id oid;
- if (!get_oid_hex(name, &oid) && name[GIT_SHA1_HEXSZ] == ' ')
- name += GIT_SHA1_HEXSZ + 1;
- else
+ if (get_oid_hex(name, &oid) ||
+ (name[GIT_SHA1_HEXSZ] != ' ' &&
+ name[GIT_SHA1_HEXSZ] != '\0'))
oidclr(&oid);
+ else if (name[GIT_SHA1_HEXSZ] == ' ')
+ name += GIT_SHA1_HEXSZ + 1;
ref = alloc_ref(name);
oidcpy(&ref->old_oid, &oid);
--
2.7.2