aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatrick Steinhardt <ps@pks.im>2024-06-14 08:50:47 +0200
committerJunio C Hamano <gitster@pobox.com>2024-06-14 10:26:34 -0700
commit58650befd9c99ab3ec4e946d5b3a50559e5ad309 (patch)
treed0dd3d95f1d0de357ae9a529c86a150305c9b743
parentoidset: pass hash algorithm when parsing file (diff)
downloadgit-58650befd9c99ab3ec4e946d5b3a50559e5ad309.tar.gz
git-58650befd9c99ab3ec4e946d5b3a50559e5ad309.zip
protocol-caps: use hash algorithm from passed-in repository
In `send_info()`, we pass in a repository but then use `get_oid_hex()` to parse passed-in object IDs, which implicitly uses `the_repository`. Fix this by using the hash algorithm from the passed-in repository instead. Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--protocol-caps.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/protocol-caps.c b/protocol-caps.c
index fe8d1d5c63..855f279c2f 100644
--- a/protocol-caps.c
+++ b/protocol-caps.c
@@ -7,6 +7,7 @@
#include "hex.h"
#include "object.h"
#include "object-store-ll.h"
+#include "repository.h"
#include "string-list.h"
#include "strbuf.h"
@@ -52,7 +53,7 @@ static void send_info(struct repository *r, struct packet_writer *writer,
struct object_id oid;
unsigned long object_size;
- if (get_oid_hex(oid_str, &oid) < 0) {
+ if (get_oid_hex_algop(oid_str, &oid, r->hash_algo) < 0) {
packet_writer_error(
writer,
"object-info: protocol error, expected to get oid, not '%s'",