summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--connect.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/connect.c b/connect.c
index 49b28b83be..df56c0cbff 100644
--- a/connect.c
+++ b/connect.c
@@ -778,7 +778,6 @@ struct child_process *git_connect(int fd[2], const char *url,
char *hostandport, *path;
struct child_process *conn = &no_fork;
enum protocol protocol;
- struct strbuf cmd = STRBUF_INIT;
/* Without this we cannot rely on waitpid() to tell
* what happened to our children.
@@ -826,6 +825,8 @@ struct child_process *git_connect(int fd[2], const char *url,
target_host, 0);
free(target_host);
} else {
+ struct strbuf cmd = STRBUF_INIT;
+
conn = xmalloc(sizeof(*conn));
child_process_init(conn);
@@ -862,6 +863,7 @@ struct child_process *git_connect(int fd[2], const char *url,
free(hostandport);
free(path);
free(conn);
+ strbuf_release(&cmd);
return NULL;
}