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

[PATCH v2 2/2] git.c: improve code readability in cmd_main

From
DGDaniel Sonbolian via GitGitGadget <gitgitgadget@gmail.com>
Date
Oct 7, 2022, 14:38 UTC
Message-ID
<7fe59688018d195f27456af029d5b4fd8e40206b.1665153486.git.gitgitgadget@gmail.com>
In-Reply-To
<pull.1355.v2.git.git.1665153486.gitgitgadget@gmail.com>
From: Daniel Sonbolian <dsal3389@gmail.com>

checking for an error condition whose body unconditionally exists first, and then the special casing of "version" and "help" as part of the preparation for the "normal codepath", making the code simpler to read

Signed-off-by: Daniel Sonbolian <dsal3389@gmail.com>
---
 git.c | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/git.c b/git.c
index da411c53822..340ec8bcb31 100644
--- a/git.c
+++ b/git.c
@@ -894,12 +894,8 @@ int cmd_main(int argc, const char **argv)
 	argv++;
 	argc--;
 	handle_options(&argv, &argc, NULL);
-	if (argc > 0) {
-		if (!strcmp("--version", argv[0]) || !strcmp("-v", argv[0]))
-			argv[0] = "version";
-		else if (!strcmp("--help", argv[0]) || !strcmp("-h", argv[0]))
-			argv[0] = "help";
-	} else {
+
+	if (argc <= 0) {
 		/* The user didn't specify a command; give them help */
 		commit_pager_choice();
 		printf(_("usage: %s\n\n"), git_usage_string);
@@ -907,6 +903,12 @@ int cmd_main(int argc, const char **argv)
 		printf("\n%s\n", _(git_more_info_string));
 		exit(1);
 	}
+
+	if (!strcmp("--version", argv[0]) || !strcmp("-v", argv[0]))
+		argv[0] = "version";
+	else if (!strcmp("--help", argv[0]) || !strcmp("-h", argv[0]))
+		argv[0] = "help";
+
 	cmd = argv[0];
 
 	/*
-- 
gitgitgadget
Previous: Junio C HamanoNext: Daniel Sonbolian via GitGitGadget
Message 14 of 15 in “Minor Refactors: remove useless else”
  1. 0/2 Minor Refactors: remove useless elsedsal3389 via GitGitGadget, Oct 6, 2022
  2. 1/2 python file more pytonic, adjust "if" and "for"dsal3389 via GitGitGadget, Oct 6, 2022
  3. Victoria DyeOct 6, 2022
  4. Junio C HamanoOct 6, 2022
  5. 2/2 removed else statementdsal3389 via GitGitGadget, Oct 6, 2022
  6. Victoria DyeOct 6, 2022
  7. Junio C HamanoOct 7, 2022
  8. Junio C HamanoOct 6, 2022
  9. Junio C HamanoOct 6, 2022
  10. 0/2 git.c: improve readability | git-p4: minor optimizationDaniel Sonbolian via GitGitGadget, Oct 7, 2022
  11. 1/2 git-p4: minor optimization in read_pip_linesDaniel Sonbolian via GitGitGadget, Oct 7, 2022
  12. Phillip WoodOct 7, 2022
  13. Junio C HamanoOct 7, 2022
  14. 2/2 git.c: improve code readability in cmd_mainDaniel Sonbolian via GitGitGadget, Oct 7, 2022
  15. git.c: improve code readability in cmd_mainDaniel Sonbolian via GitGitGadget, Oct 8, 2022

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.