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

[PATCH v4 03/22] receive-pack: do not reuse old_sha1[] for other things

From
Junio C Hamano <gitster@pobox.com>
Date
Sep 5, 2014, 20:54 UTC
Message-ID
<1409950510-10209-4-git-send-email-gitster@pobox.com>
In-Reply-To
<1409950510-10209-1-git-send-email-gitster@pobox.com>

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 <gitster@pobox.com>
---
 builtin/receive-pack.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/builtin/receive-pack.c b/builtin/receive-pack.c
index a91eec8..c9b92bf 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;
 		}
 
-- 
2.1.0-399-g2df620b
Previous: Junio C HamanoNext: Junio C Hamano
Message 4 of 23 in “Signed push”
  1. 00/22 Signed pushJunio C Hamano, Sep 5, 2014
  2. 01/22 receive-pack: do not overallocate command structureJunio C Hamano, Sep 5, 2014
  3. 02/22 receive-pack: parse feature request a bit earlierJunio C Hamano, Sep 5, 2014
  4. 03/22 receive-pack: do not reuse old_sha1[] for other thingsJunio C Hamano, Sep 5, 2014
  5. 04/22 receive-pack: factor out queueing of commandJunio C Hamano, Sep 5, 2014
  6. 05/22 send-pack: move REF_STATUS_REJECT_NODELETE logic a bit higherJunio C Hamano, Sep 5, 2014
  7. 06/22 send-pack: refactor decision to send update per refJunio C Hamano, Sep 5, 2014
  8. 07/22 send-pack: always send capabilitiesJunio C Hamano, Sep 5, 2014
  9. 08/22 send-pack: factor out capability string generationJunio C Hamano, Sep 5, 2014
  10. 09/22 receive-pack: factor out capability string generationJunio C Hamano, Sep 5, 2014
  11. 10/22 send-pack: rename "new_refs" to "need_pack_data"Junio C Hamano, Sep 5, 2014
  12. 11/22 send-pack: refactor inspecting and resetting status and sending commandsJunio C Hamano, Sep 5, 2014
  13. 12/22 send-pack: clarify that cmds_sent is a booleanJunio C Hamano, Sep 5, 2014
  14. 13/22 gpg-interface: move parse_gpg_output() to where it should beJunio C Hamano, Sep 5, 2014
  15. 14/22 gpg-interface: move parse_signature() to where it should beJunio C Hamano, Sep 5, 2014
  16. 15/22 pack-protocol doc: typofix for PKT-LINEJunio C Hamano, Sep 5, 2014
  17. 16/22 push: the beginning of "git push --signed"Junio C Hamano, Sep 5, 2014
  18. 17/22 receive-pack: GPG-validate push certificatesJunio C Hamano, Sep 5, 2014
  19. 18/22 send-pack: send feature request on push-cert packetJunio C Hamano, Sep 5, 2014
  20. 19/22 signed push: remove duplicated protocol infoJunio C Hamano, Sep 5, 2014
  21. 20/22 signed push: add "pushee" header to push certificateJunio C Hamano, Sep 5, 2014
  22. 21/22 signed push: fortify against replay attacksJunio C Hamano, Sep 5, 2014
  23. 22/22 signed push: allow stale nonce in stateless modeJunio C Hamano, Sep 5, 2014

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.