config: Return ENOTFOUND when a variable was deleted

This commit is contained in:
Vicent Marti 2011-12-15 18:14:41 +01:00
parent bc57b80b83
commit 2ea14da648

View File

@ -391,17 +391,15 @@ static int config_set(git_config_file *cfg, const char *name, const char *value)
static int config_get(git_config_file *cfg, const char *name, const char **out)
{
cvar_t *var;
int error = GIT_SUCCESS;
diskfile_backend *b = (diskfile_backend *)cfg;
var = cvar_list_find(&b->var_list, name);
if (var == NULL)
if (var == NULL || var->value == NULL)
return git__throw(GIT_ENOTFOUND, "Variable '%s' not found", name);
*out = var->value;
return error == GIT_SUCCESS ? GIT_SUCCESS : git__rethrow(error, "Failed to get config value for %s", name);
return GIT_SUCCESS;
}
int git_config_file__ondisk(git_config_file **out, const char *path)