Skip to contentSkip to conversation

C cleanup series, mostly nasty shadowing

PATCH New Pierre Habouzit 1 participant 8 messages Jun 15, 2016

lore
Share & tools
lore
#0 lore raw

cover C cleanup series, mostly nasty shadowing

This series of patches intend to fix some not very nice bits of code. None of them are critical though.

0001-avoid-to-use-error-that-shadows-the-function-name-use-err-instead.txt 0002-git_dir-holds-pointers-to-local-strings-hence-MUST-be-const.txt 0003-missing-static-keywords.txt 0004-remove-ugly-shadowing-of-loop-indexes-in-subloops.txt 0005-missing-define-DEBUG-0-that-made-the-preprocessor-whine.txt 0006-use-name-len-in-switch-directly-instead-of-creating-a-shadowed-variable.txt 0007-n-is-in-fact-unused-and-is-later-shadowed.txt

 builtin-apply.c    |   10 ++++------
 builtin-grep.c     |    2 ++
 builtin-mv.c       |    6 +++---
 builtin-push.c     |   10 +++++-----
 builtin-tar-tree.c |    2 +-
 cache.h            |    2 +-
 date.c             |    5 ++---
 environment.c      |    7 ++++---
 git.c              |    6 +++---
 http-push.c        |    2 +-
 10 files changed, 26 insertions(+), 26 deletions(-)
Signature · 3 lines
·O·  Pierre Habouzit
··O                                                [email protected]
OOO                                                http://www.madism.org
#1 lore raw

PATCH 1/7 avoid to use error that shadows the function name, use err instead.

---
 builtin-apply.c |    6 +++---
 builtin-push.c  |   10 +++++-----
 2 files changed, 8 insertions(+), 8 deletions(-)
builtin-apply.c +3 -3
index 4f0eef0..5991737 100644
@@ -1907,13 +1907,13 @@ static int check_patch(struct patch *pat
 static int check_patch_list(struct patch *patch)
 {
 	struct patch *prev_patch = NULL;
-	int error = 0;
+	int err = 0;
 
 	for (prev_patch = NULL; patch ; patch = patch->next) {
-		error |= check_patch(patch, prev_patch);
+		err |= check_patch(patch, prev_patch);
 		prev_patch = patch;
 	}
-	return error;
+	return err;
 }
 
 static void show_index_list(struct patch *list)
builtin-push.c +5 -5
index 2b5e6fa..ada8338 100644
@@ -232,7 +232,7 @@ static int do_push(const char *repo)
 	common_argc = argc;
 
 	for (i = 0; i < n; i++) {
-		int error;
+		int err;
 		int dest_argc = common_argc;
 		int dest_refspec_nr = refspec_nr;
 		const char **dest_refspec = refspec;
@@ -248,10 +248,10 @@ static int do_push(const char *repo)
 		while (dest_refspec_nr--)
 			argv[dest_argc++] = *dest_refspec++;
 		argv[dest_argc] = NULL;
-		error = run_command_v(argc, argv);
-		if (!error)
+		err = run_command_v(argc, argv);
+		if (!err)
 			continue;
-		switch (error) {
+		switch (err) {
 		case -ERR_RUN_COMMAND_FORK:
 			die("unable to fork for %s", sender);
 		case -ERR_RUN_COMMAND_EXEC:
@@ -262,7 +262,7 @@ static int do_push(const char *repo)
 		case -ERR_RUN_COMMAND_WAITPID_NOEXIT:
 			die("%s died with strange error", sender);
 		default:
-			return -error;
+			return -err;
 		}
 	}
 	return 0;
Signature · 1 line
1.4.1.1
#2 lore raw

PATCH 2/7 git_dir holds pointers to local strings, hence MUST be const.

---
 cache.h       |    2 +-
 environment.c |    7 ++++---
 2 files changed, 5 insertions(+), 4 deletions(-)
cache.h +1 -1
index 08d6a91..3044794 100644
@@ -123,7 +123,7 @@ #define DB_ENVIRONMENT "GIT_OBJECT_DIREC
 #define INDEX_ENVIRONMENT "GIT_INDEX_FILE"
 #define GRAFT_ENVIRONMENT "GIT_GRAFT_FILE"
 
-extern char *get_git_dir(void);
+extern const char *get_git_dir(void);
 extern char *get_object_directory(void);
 extern char *get_refs_directory(void);
 extern char *get_index_file(void);
environment.c +4 -3
index e6bd003..5fae9ac 100644
@@ -25,8 +25,9 @@ int zlib_compression_level = Z_DEFAULT_C
 int pager_in_use;
 int pager_use_color = 1;
 
-static char *git_dir, *git_object_dir, *git_index_file, *git_refs_dir,
-	*git_graft_file;
+static const char *git_dir;
+static char *git_object_dir, *git_index_file, *git_refs_dir, *git_graft_file;
+
 static void setup_git_env(void)
 {
 	git_dir = getenv(GIT_DIR_ENVIRONMENT);
@@ -49,7 +50,7 @@ static void setup_git_env(void)
 		git_graft_file = strdup(git_path("info/grafts"));
 }
 
-char *get_git_dir(void)
+const char *get_git_dir(void)
 {
 	if (!git_dir)
 		setup_git_env();
Signature · 1 line
1.4.1.1
#3 lore raw

PATCH 3/7 missing 'static' keywords

---
 builtin-tar-tree.c |    2 +-
 http-push.c        |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
builtin-tar-tree.c +1 -1
index e0bcb0a..61a4135 100644
@@ -275,7 +275,7 @@ static void traverse_tree(struct tree_de
 	}
 }
 
-int git_tar_config(const char *var, const char *value)
+static int git_tar_config(const char *var, const char *value)
 {
 	if (!strcmp(var, "tar.umask")) {
 		if (!strcmp(value, "user")) {
http-push.c +1 -1
index 4849779..7d12f69 100644
@@ -1700,7 +1700,7 @@ static int locking_available(void)
 	return lock_flags;
 }
 
-struct object_list **add_one_object(struct object *obj, struct object_list **p)
+static struct object_list **add_one_object(struct object *obj, struct object_list **p)
 {
 	struct object_list *entry = xmalloc(sizeof(struct object_list));
 	entry->item = obj;
Signature · 1 line
1.4.1.1
#4 lore raw

PATCH 4/7 remove ugly shadowing of loop indexes in subloops.

---
 builtin-mv.c |    6 +++---
 git.c        |    6 +++---
 2 files changed, 6 insertions(+), 6 deletions(-)
builtin-mv.c +3 -3
index ff882be..fd1e520 100644
@@ -262,10 +262,10 @@ int cmd_mv(int argc, const char **argv, 
 	} else {
 		for (i = 0; i < changed.nr; i++) {
 			const char *path = changed.items[i].path;
-			int i = cache_name_pos(path, strlen(path));
-			struct cache_entry *ce = active_cache[i];
+			int j = cache_name_pos(path, strlen(path));
+			struct cache_entry *ce = active_cache[j];
 
-			if (i < 0)
+			if (j < 0)
 				die ("Huh? Cache entry for %s unknown?", path);
 			refresh_cache_entry(ce, 0);
 		}
git.c +3 -3
index 930998b..a01d195 100644
@@ -292,11 +292,11 @@ static void handle_internal_command(int 
 		if (p->option & USE_PAGER)
 			setup_pager();
 		if (getenv("GIT_TRACE")) {
-			int i;
+			int j;
 			fprintf(stderr, "trace: built-in: git");
-			for (i = 0; i < argc; ++i) {
+			for (j = 0; j < argc; ++j) {
 				fputc(' ', stderr);
-				sq_quote_print(stderr, argv[i]);
+				sq_quote_print(stderr, argv[j]);
 			}
 			putc('\n', stderr);
 			fflush(stderr);
Signature · 1 line
1.4.1.1
#5 lore raw

PATCH 5/7 missing #define DEBUG 0 that made the preprocessor whine

---
 builtin-grep.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
builtin-grep.c +2 -0
index 0bd517b..3123494 100644
@@ -14,6 +14,8 @@ #include <regex.h>
 #include <fnmatch.h>
 #include <sys/wait.h>
 
+#define DEBUG 0
+
 /*
  * git grep pathspecs are somewhat different from diff-tree pathspecs;
  * pathname wildcards are allowed.
Signature · 1 line
1.4.1.1
#6 lore raw

PATCH 6/7 use name[len] in switch directly, instead of creating a shadowed variable.

---
 builtin-apply.c |    4 +---
 1 files changed, 1 insertions(+), 3 deletions(-)
builtin-apply.c +1 -3
index 5991737..f8f5eeb 100644
@@ -606,9 +606,7 @@ static char *git_header_name(char *line,
 	 * form.
 	 */
 	for (len = 0 ; ; len++) {
-		char c = name[len];
-
-		switch (c) {
+		switch (name[len]) {
 		default:
 			continue;
 		case '\n':
Signature · 1 line
1.4.1.1
#7 lore raw

PATCH 7/7 n is in fact unused, and is later shadowed.

---
 date.c |    5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)
date.c +2 -3
index 66be23a..63d1d5b 100644
@@ -584,10 +584,9 @@ static const char *approxidate_alpha(con
 	const struct typelen *tl;
 	const struct special *s;
 	const char *end = date;
-	int n = 1, i;
+	int i;
 
-	while (isalpha(*++end))
-		n++;
+	while (isalpha(*++end));
 
 	for (i = 0; i < 12; i++) {
 		int match = match_string(date, month_names[i]);
Signature · 1 line
1.4.1.1