From: Junio C Hamano Date: Fri, 15 Aug 2014 21:26:17 +0000 (-0700) Subject: receive-pack: do not reuse old_sha1[] for other things X-Git-Tag: v2.2.0-rc0~64^2~21 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c09b71ccc45f4be3acca5e809a18a000cae09faf;p=thirdparty%2Fgit.git receive-pack: do not reuse old_sha1[] for other things This piece of code reads object names of shallow boundaries, not old_sha1[], i.e. the current value the ref points at, which is to be replaced by what is in new_sha1[]. Signed-off-by: Junio C Hamano --- diff --git a/builtin/receive-pack.c b/builtin/receive-pack.c index a91eec8b1c..c9b92bffda 100644 --- a/builtin/receive-pack.c +++ b/builtin/receive-pack.c @@ -847,9 +847,11 @@ static struct command *read_head_info(struct sha1_array *shallow) break; if (len == 48 && starts_with(line, "shallow ")) { - if (get_sha1_hex(line + 8, old_sha1)) - die("protocol error: expected shallow sha, got '%s'", line + 8); - sha1_array_append(shallow, old_sha1); + unsigned char sha1[20]; + if (get_sha1_hex(line + 8, sha1)) + die("protocol error: expected shallow sha, got '%s'", + line + 8); + sha1_array_append(shallow, sha1); continue; }