[PATCH 2/8] config: Cleanup config file handling.
As suggested by Johannes Schindelin.
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
---
builtin-config.c | 20 +++++++++-----------
1 files changed, 9 insertions(+), 11 deletions(-)
diff --git a/builtin-config.c b/builtin-config.c
index bf8df58..da754e0 100644
--- a/builtin-config.c
+++ b/builtin-config.c
@@ -282,11 +282,11 @@ static int get_colorbool(int argc, const char **argv)
}
}
-int cmd_config(int argc, const char **argv, const char *prefix)
+int cmd_config(int argc, const char **argv, const char *unused_prefix)
{
int nongit;
char* value;
- const char *file = setup_git_directory_gently(&nongit);
+ const char *prefix = setup_git_directory_gently(&nongit);
config_exclusive_filename = getenv(CONFIG_ENVIRONMENT);
@@ -300,10 +300,8 @@ int cmd_config(int argc, const char **argv, const char *prefix)
else if (!strcmp(argv[1], "--list") || !strcmp(argv[1], "-l")) {
if (argc != 2)
usage(git_config_set_usage);
- if (git_config(show_all_config, NULL) < 0 &&
- file && errno)
- die("unable to read config file %s: %s", file,
- strerror(errno));
+ if (git_config(show_all_config, NULL) < 0)
+ die("error processing config file(s)");
return 0;
}
else if (!strcmp(argv[1], "--global")) {
@@ -320,12 +318,12 @@ int cmd_config(int argc, const char **argv, const char *prefix)
else if (!strcmp(argv[1], "--file") || !strcmp(argv[1], "-f")) {
if (argc < 3)
usage(git_config_set_usage);
- if (!is_absolute_path(argv[2]) && file)
- file = prefix_filename(file, strlen(file),
- argv[2]);
+ if (!is_absolute_path(argv[2]) && prefix)
+ config_exclusive_filename = prefix_filename(prefix,
+ strlen(prefix),
+ argv[2]);
else
- file = argv[2];
- config_exclusive_filename = file;
+ config_exclusive_filename = argv[2];
argc--;
argv++;
}
--
1.6.1.3