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

Re: [PATCH] shortlog: initialize nongit variable

From
SZEDER Gábor <szeder@ira.uka.de>
Date
Mar 25, 2008, 21:06 UTC
Message-ID
<20080325210600.GE6506@neumann>
In-Reply-To
<2c6b72b30803251258j313e0d94qe290b8b7c7b377f0@mail.gmail.com>
On Tue, Mar 25, 2008 at 08:58:50PM +0100, Jonas Fonseca wrote:
Show 10 quoted lines
> 2008/3/25 SZEDER Gábor <szeder@ira.uka.de>:
> >   builtin-bundle.c     |    2 +-
> >   builtin-config.c     |    2 +-
> >   builtin-diff-files.c |    2 +-
> >   builtin-ls-remote.c  |    2 +-
> >   git.c                |    2 +-
> >   setup.c              |    8 ++++++++
> >   6 files changed, 13 insertions(+), 5 deletions(-)
> 
> git grep reveals that builtin-{apply,diff}.c,
Right, I have overseen them.  Updated patch appended.
> help.c and var.c also belongs on this list.
They don't initialize (and use) their nongit variable.

Regards, Gábor

Always set *nongit_ok in setup_git_directory_gently()

setup_git_directory_gently() only modified the value of its *nongit_ok argument if we were not in a git repository. Now it will always set it to 0 when we are inside a repository.

Also remove now unnecessary initializations in the callers of this function.

Signed-off-by: SZEDER Gábor <szeder@ira.uka.de>
---
 builtin-apply.c      |    2 +-
 builtin-bundle.c     |    2 +-
 builtin-config.c     |    2 +-
 builtin-diff-files.c |    2 +-
 builtin-diff.c       |    2 +-
 builtin-ls-remote.c  |    2 +-
 git.c                |    2 +-
 setup.c              |    8 ++++++++
 8 files changed, 15 insertions(+), 7 deletions(-)
diff --git a/builtin-apply.c b/builtin-apply.c
index a3f075d..b5f78ac 100644
--- a/builtin-apply.c
+++ b/builtin-apply.c
@@ -2994,7 +2994,7 @@ int cmd_apply(int argc, const char **argv, const char *unused_prefix)
 	int read_stdin = 1;
 	int inaccurate_eof = 0;
 	int errs = 0;
-	int is_not_gitdir = 0;
+	int is_not_gitdir;
 
 	const char *whitespace_option = NULL;
 
diff --git a/builtin-bundle.c b/builtin-bundle.c
index 9f38e21..ac476e7 100644
--- a/builtin-bundle.c
+++ b/builtin-bundle.c
@@ -14,7 +14,7 @@ static const char *bundle_usage="git-bundle (create <bundle> <git-rev-list args>
 int cmd_bundle(int argc, const char **argv, const char *prefix)
 {
 	struct bundle_header header;
-	int nongit = 0;
+	int nongit;
 	const char *cmd, *bundle_file;
 	int bundle_fd = -1;
 	char buffer[PATH_MAX];
diff --git a/builtin-config.c b/builtin-config.c
index 2b9a426..c34bc8b 100644
--- a/builtin-config.c
+++ b/builtin-config.c
@@ -264,7 +264,7 @@ static int get_colorbool(int argc, const char **argv)
 
 int cmd_config(int argc, const char **argv, const char *prefix)
 {
-	int nongit = 0;
+	int nongit;
 	char* value;
 	const char *file = setup_git_directory_gently(&nongit);
 
diff --git a/builtin-diff-files.c b/builtin-diff-files.c
index 4abe3c2..e2306c1 100644
--- a/builtin-diff-files.c
+++ b/builtin-diff-files.c
@@ -16,7 +16,7 @@ COMMON_DIFF_OPTIONS_HELP;
 int cmd_diff_files(int argc, const char **argv, const char *prefix)
 {
 	struct rev_info rev;
-	int nongit = 0;
+	int nongit;
 	int result;
 
 	prefix = setup_git_directory_gently(&nongit);
diff --git a/builtin-diff.c b/builtin-diff.c
index 444ff2f..7c2a841 100644
--- a/builtin-diff.c
+++ b/builtin-diff.c
@@ -210,7 +210,7 @@ int cmd_diff(int argc, const char **argv, const char *prefix)
 	int ents = 0, blobs = 0, paths = 0;
 	const char *path = NULL;
 	struct blobinfo blob[2];
-	int nongit = 0;
+	int nongit;
 	int result = 0;
 
 	/*
diff --git a/builtin-ls-remote.c b/builtin-ls-remote.c
index 8907a89..06ab8da 100644
--- a/builtin-ls-remote.c
+++ b/builtin-ls-remote.c
@@ -31,7 +31,7 @@ int cmd_ls_remote(int argc, const char **argv, const char *prefix)
 {
 	int i;
 	const char *dest = NULL;
-	int nongit = 0;
+	int nongit;
 	unsigned flags = 0;
 	const char *uploadpack = NULL;
 	const char **pattern = NULL;
diff --git a/git.c b/git.c
index 13de801..70458af 100644
--- a/git.c
+++ b/git.c
@@ -142,7 +142,7 @@ static int split_cmdline(char *cmdline, const char ***argv)
 
 static int handle_alias(int *argcp, const char ***argv)
 {
-	int nongit = 0, envchanged = 0, ret = 0, saved_errno = errno;
+	int nongit, envchanged = 0, ret = 0, saved_errno = errno;
 	const char *subdir;
 	int count, option_count;
 	const char** new_argv;
diff --git a/setup.c b/setup.c
index 41e298b..3d2d958 100644
--- a/setup.c
+++ b/setup.c
@@ -326,6 +326,14 @@ const char *setup_git_directory_gently(int *nongit_ok)
 	int len, offset;
 
 	/*
+	 * Let's assume that we are in a git repository.
+	 * If it turns out later that we are somewhere else, the value will be
+	 * updated accordingly.
+	 */
+	if (nongit_ok)
+		*nongit_ok = 0;
+
+	/*
 	 * If GIT_DIR is set explicitly, we're not going
 	 * to do any discovery, but we still do repository
 	 * validation.
-- 
1.5.5.rc1.7.g249d1
Previous: Jonas Fonseca
Message 5 of 5 in “shortlog: initialize nongit variable”
  1. shortlog: initialize nongit variableSZEDER Gábor, Mar 25, 2008
  2. Nguyen Thai Ngoc DuyMar 25, 2008
  3. SZEDER GáborMar 25, 2008
  4. Jonas FonsecaMar 25, 2008
  5. SZEDER GáborMar 25, 2008

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.