diff options
Diffstat (limited to 'protocol.c')
-rw-r--r-- | protocol.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/protocol.c b/protocol.c index 9741f05750..c53f7df5be 100644 --- a/protocol.c +++ b/protocol.c @@ -17,30 +17,29 @@ static enum protocol_version parse_protocol_version(const char *value) enum protocol_version get_protocol_version_config(void) { const char *value; - enum protocol_version retval = protocol_v0; const char *git_test_k = "GIT_TEST_PROTOCOL_VERSION"; - const char *git_test_v = getenv(git_test_k); + const char *git_test_v; - if (!git_config_get_string_const("protocol.version", &value)) { + if (!git_config_get_string_tmp("protocol.version", &value)) { enum protocol_version version = parse_protocol_version(value); if (version == protocol_unknown_version) die("unknown value for config 'protocol.version': %s", value); - retval = version; + return version; } + git_test_v = getenv(git_test_k); if (git_test_v && *git_test_v) { enum protocol_version env = parse_protocol_version(git_test_v); if (env == protocol_unknown_version) die("unknown value for %s: %s", git_test_k, git_test_v); - if (retval < env) - retval = env; + return env; } - return retval; + return protocol_v2; } enum protocol_version determine_protocol_version_server(void) @@ -74,6 +73,8 @@ enum protocol_version determine_protocol_version_server(void) string_list_clear(&list, 0); } + trace2_data_intmax("transfer", NULL, "negotiated-version", version); + return version; } |