summaryrefslogtreecommitdiff
path: root/src/config.c
diff options
context:
space:
mode:
authorRussell Belfer <rb@github.com>2013-07-09 16:46:18 -0700
committerRussell Belfer <rb@github.com>2013-07-09 16:46:18 -0700
commite4fda954d6d914609498fc3bcbd27b4e2b5834d3 (patch)
treecbec4a13d1974bf2bce5eb34903f80f2ca568dc2 /src/config.c
parent7b5c0d18460b6cb0a65543b92002a29644dbb458 (diff)
downloadlibgit2-e4fda954d6d914609498fc3bcbd27b4e2b5834d3.tar.gz
A little git_config_get_multivar code cleanup
Diffstat (limited to 'src/config.c')
-rw-r--r--src/config.c16
1 files changed, 5 insertions, 11 deletions
diff --git a/src/config.c b/src/config.c
index aaad7d87c..2a058549f 100644
--- a/src/config.c
+++ b/src/config.c
@@ -534,8 +534,7 @@ int git_config_get_multivar(
{
file_internal *internal;
git_config_backend *file;
- int ret = GIT_ENOTFOUND;
- int err;
+ int ret = GIT_ENOTFOUND, err;
size_t i;
/*
@@ -548,15 +547,10 @@ int git_config_get_multivar(
continue;
file = internal->file;
- err = file->get_multivar(file, name, regexp, cb, payload);
- switch (err) {
- case GIT_OK:
- ret = GIT_OK;
- case GIT_ENOTFOUND:
- break;
- default:
- return err;
- }
+ if (!(err = file->get_multivar(file, name, regexp, cb, payload)))
+ ret = 0;
+ else if (err != GIT_ENOTFOUND)
+ return err;
}
return (ret == GIT_ENOTFOUND) ? config_error_notfound(name) : 0;