diff --git a/src/fetch.c b/src/fetch.c index 19afddcd8..276591821 100644 --- a/src/fetch.c +++ b/src/fetch.c @@ -72,7 +72,10 @@ static int filter_wants(git_remote *remote) if ((error = git_refspec__parse(&head, "HEAD", true)) < 0) goto cleanup; - if ((error = git_refspec__dwim_one(&remote->active_refspecs, &head, &remote->refs)) < 0) + error = git_refspec__dwim_one(&remote->active_refspecs, &head, &remote->refs); + git_refspec__free(&head); + + if (error < 0) goto cleanup; } diff --git a/src/remote.c b/src/remote.c index 289ead802..dcadb92ae 100644 --- a/src/remote.c +++ b/src/remote.c @@ -726,9 +726,6 @@ int git_remote_download(git_remote *remote) assert(remote); - if (git_vector_init(&refs, 8, remote_head_cmp) < 0) - return -1; - if (git_remote_ls((const git_remote_head ***)&refs.contents, &refs.length, remote) < 0) return -1; @@ -983,9 +980,6 @@ int git_remote_update_tips(git_remote *remote) if (git_refspec__parse(&tagspec, GIT_REFSPEC_TAGS, true) < 0) return -1; - if (git_vector_init(&refs, 16, NULL) < 0) - return -1; - if ((error = git_remote_ls((const git_remote_head ***)&refs.contents, &refs.length, remote)) < 0) goto out;