This makes the code simpler by removing a few lines, and getting rid of one variable. Signed-off-by: Christian Couder <chriscool@xxxxxxxxxxxxx> --- builtin/clone.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/builtin/clone.c b/builtin/clone.c index 08b5cc433c..4b5340c55f 100644 --- a/builtin/clone.c +++ b/builtin/clone.c @@ -871,7 +871,7 @@ int cmd_clone(int argc, const char **argv, const char *prefix) const struct ref *our_head_points_at; struct ref *mapped_refs; const struct ref *ref; - struct strbuf key = STRBUF_INIT, value = STRBUF_INIT; + struct strbuf key = STRBUF_INIT; struct strbuf branch_top = STRBUF_INIT, reflog_msg = STRBUF_INIT; struct transport *transport = NULL; const char *src_ref_prefix = "refs/heads/"; @@ -1036,7 +1036,6 @@ int cmd_clone(int argc, const char **argv, const char *prefix) strbuf_addf(&branch_top, "refs/remotes/%s/", option_origin); } - strbuf_addf(&value, "+%s*:%s*", src_ref_prefix, branch_top.buf); strbuf_addf(&key, "remote.%s.url", option_origin); git_config_set(key.buf, repo); strbuf_reset(&key); @@ -1050,10 +1049,9 @@ int cmd_clone(int argc, const char **argv, const char *prefix) if (option_required_reference.nr || option_optional_reference.nr) setup_reference(); - fetch_pattern = value.buf; + fetch_pattern = xstrfmt("+%s*:%s*", src_ref_prefix, branch_top.buf); refspec = parse_fetch_refspec(1, &fetch_pattern); - - strbuf_reset(&value); + free((char *)fetch_pattern); remote = remote_get(option_origin); transport = transport_get(remote, remote->url[0]); @@ -1192,7 +1190,6 @@ int cmd_clone(int argc, const char **argv, const char *prefix) strbuf_release(&reflog_msg); strbuf_release(&branch_top); strbuf_release(&key); - strbuf_release(&value); junk_mode = JUNK_LEAVE_ALL; free(refspec); -- 2.14.0.rc1.52.gf02fb0ddac.dirty