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

[PATCH v2 15/17] cmd_fetch_pack(): simplify computation of return value

From
mhagger@alum.mit.edu <mhagger@alum.mit.edu>
Date
Aug 25, 2012, 06:44 UTC
Message-ID
<1345877067-11841-16-git-send-email-mhagger@alum.mit.edu>
In-Reply-To
<1345877067-11841-1-git-send-email-mhagger@alum.mit.edu>
From: Michael Haggerty <mhagger@alum.mit.edu>

Set the final value at initialization rather than initializing it then sometimes changing it.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
---
 builtin/fetch-pack.c | 21 ++++++++++-----------
 1 file changed, 10 insertions(+), 11 deletions(-)
diff --git a/builtin/fetch-pack.c b/builtin/fetch-pack.c
index 00ac3b1..c49dadf 100644
--- a/builtin/fetch-pack.c
+++ b/builtin/fetch-pack.c
@@ -1027,17 +1027,16 @@ int cmd_fetch_pack(int argc, const char **argv, const char *prefix)
 	if (finish_connect(conn))
 		return 1;
 
-	ret = !ref;
-	if (nr_heads) {
-		/* If the heads to pull were given, we should have
-		 * consumed all of them by matching the remote.
-		 * Otherwise, 'git fetch remote no-such-ref' would
-		 * silently succeed without issuing an error.
-		 */
-		for (i = 0; i < nr_heads; i++)
-			error("no such remote ref %s", heads[i]);
-		ret = 1;
-	}
+	ret = !ref || nr_heads;
+
+	/*
+	 * If the heads to pull were given, we should have consumed
+	 * all of them by matching the remote.  Otherwise, 'git fetch
+	 * remote no-such-ref' would silently succeed without issuing
+	 * an error.
+	 */
+	for (i = 0; i < nr_heads; i++)
+		error("no such remote ref %s", heads[i]);
 	while (ref) {
 		printf("%s %s\n",
 		       sha1_to_hex(ref->old_sha1), ref->name);
-- 
1.7.11.3
Previous: mhagger@alum.mit.eduNext: mhagger@alum.mit.edu
Message 16 of 19 in “Clean up how fetch_pack() handles the heads list”
  1. 00/17 Clean up how fetch_pack() handles the heads listmhagger@alum.mit.edu, Aug 25, 2012
  2. 01/17 t5500: add tests of error output for missing refsmhagger@alum.mit.edu, Aug 25, 2012
  3. 02/17 Rename static function fetch_pack() to http_fetch_pack()mhagger@alum.mit.edu, Aug 25, 2012
  4. 03/17 Fix formatting.mhagger@alum.mit.edu, Aug 25, 2012
  5. 04/17 Name local variables more consistentlymhagger@alum.mit.edu, Aug 25, 2012
  6. 05/17 Do not check the same head_pos twicemhagger@alum.mit.edu, Aug 25, 2012
  7. 06/17 Let fetch_pack() inform caller about number of unique headsmhagger@alum.mit.edu, Aug 25, 2012
  8. 07/17 Pass nr_heads to do_pack_ref() by referencemhagger@alum.mit.edu, Aug 25, 2012
  9. 08/17 Pass nr_heads to everything_local() by referencemhagger@alum.mit.edu, Aug 25, 2012
  10. 09/17 Pass nr_heads to filter_refs() by referencemhagger@alum.mit.edu, Aug 25, 2012
  11. 10/17 Remove ineffective optimizationmhagger@alum.mit.edu, Aug 25, 2012
  12. 11/17 filter_refs(): do not leave gaps in return_refsmhagger@alum.mit.edu, Aug 25, 2012
  13. 12/17 filter_refs(): compress unmatched refs in heads arraymhagger@alum.mit.edu, Aug 25, 2012
  14. 13/17 cmd_fetch_pack: return early if finish_connect() returns an errormhagger@alum.mit.edu, Aug 25, 2012
  15. 14/17 Report missing refs even if no existing refs were receivedmhagger@alum.mit.edu, Aug 25, 2012
  16. 15/17 cmd_fetch_pack(): simplify computation of return valuemhagger@alum.mit.edu, Aug 25, 2012
  17. 16/17 fetch_pack(): free matching headsmhagger@alum.mit.edu, Aug 25, 2012
  18. 17/17 filter_refs(): simplify logicmhagger@alum.mit.edu, Aug 25, 2012
  19. Junio C HamanoAug 26, 2012

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.