From dbe70bd5c3f803dbcb9fe4880df11cf08093b120 Mon Sep 17 00:00:00 2001 From: Vicent Marti Date: Sat, 18 Jun 2011 01:12:58 +0200 Subject: [PATCH] config: Fix compilation in MSVC --- src/config.c | 10 +++++----- tests/t15-config.c | 9 +-------- 2 files changed, 6 insertions(+), 13 deletions(-) diff --git a/src/config.c b/src/config.c index 2b2bdb070..b802ba50b 100644 --- a/src/config.c +++ b/src/config.c @@ -303,7 +303,8 @@ int git_config_get_string(git_config *cfg, const char *name, const char **out) { file_internal *internal; git_config_file *file; - int i, error; + int error = GIT_ENOTFOUND; + unsigned int i; if (cfg->files.length == 0) return git__throw(GIT_EINVALIDARGS, "Cannot get variable value; no files open in the `git_config` instance"); @@ -311,11 +312,10 @@ int git_config_get_string(git_config *cfg, const char *name, const char **out) for (i = 0; i < cfg->files.length; ++i) { internal = git_vector_get(&cfg->files, i); file = internal->file; - error = file->get(file, name, out); - if (error == GIT_SUCCESS) - break; + if ((error = file->get(file, name, out)) == GIT_SUCCESS) + return GIT_SUCCESS; } - return error; + return git__throw(error, "Config value '%s' not found", name); } diff --git a/tests/t15-config.c b/tests/t15-config.c index 78cd9b5d8..5e5b4b14d 100644 --- a/tests/t15-config.c +++ b/tests/t15-config.c @@ -212,18 +212,11 @@ END_TEST BEGIN_TEST(config10, "a repo's config overrides the global config") git_repository *repo; - char home_orig[GIT_PATH_MAX]; - char *home; git_config *cfg; int version; - home = getenv("HOME"); - strcpy(home_orig, home); - setenv("HOME", CONFIG_BASE, 1); - must_pass(git_repository_open(&repo, REPOSITORY_FOLDER)); - must_pass(git_repository_config(&cfg, repo, NULL, NULL)); - setenv("HOME", home_orig, 1); + must_pass(git_repository_config(&cfg, repo, CONFIG_BASE "/.gitconfig", NULL)); must_pass(git_config_get_int(cfg, "core.repositoryformatversion", &version)); must_be_true(version == 0); git_config_free(cfg);