diff options
Diffstat (limited to 'remote.c')
-rw-r--r-- | remote.c | 13 |
1 files changed, 8 insertions, 5 deletions
@@ -10,7 +10,8 @@ #include "refs.h" #include "refspec.h" #include "object-name.h" -#include "object-store.h" +#include "object-store-ll.h" +#include "path.h" #include "commit.h" #include "diff.h" #include "revision.h" @@ -349,7 +350,8 @@ static void read_branches_file(struct remote_state *remote_state, remote->fetch_tags = 1; /* always auto-follow */ } -static int handle_config(const char *key, const char *value, void *cb) +static int handle_config(const char *key, const char *value, + const struct config_context *ctx, void *cb) { const char *name; size_t namelen; @@ -357,6 +359,7 @@ static int handle_config(const char *key, const char *value, void *cb) struct remote *remote; struct branch *branch; struct remote_state *remote_state = cb; + const struct key_value_info *kvi = ctx->kvi; if (parse_config_key(key, "branch", &name, &namelen, &subkey) >= 0) { /* There is no subsection. */ @@ -414,8 +417,8 @@ static int handle_config(const char *key, const char *value, void *cb) } remote = make_remote(remote_state, name, namelen); remote->origin = REMOTE_CONFIG; - if (current_config_scope() == CONFIG_SCOPE_LOCAL || - current_config_scope() == CONFIG_SCOPE_WORKTREE) + if (kvi->scope == CONFIG_SCOPE_LOCAL || + kvi->scope == CONFIG_SCOPE_WORKTREE) remote->configured_in_repo = 1; if (!strcmp(subkey, "mirror")) remote->mirror = git_config_bool(key, value); @@ -890,7 +893,7 @@ static int query_matches_negative_refspec(struct refspec *rs, struct refspec_ite { int i, matched_negative = 0; int find_src = !query->src; - struct string_list reversed = STRING_LIST_INIT_NODUP; + struct string_list reversed = STRING_LIST_INIT_DUP; const char *needle = find_src ? query->dst : query->src; /* |