summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Steinhardt <ps@pks.im>2016-02-15 11:37:48 +0100
committerPatrick Steinhardt <ps@pks.im>2016-02-18 20:50:33 +0100
commit704554cdf07c2cdbefbf586c1ea4e8af35c720db (patch)
treebecfdfd0369fe681a09664f35bf17fbe8d91e803
parent038d7af08595eabaa3d23da4703f25f4517af365 (diff)
downloadlibgit2-704554cdf07c2cdbefbf586c1ea4e8af35c720db.tar.gz
transports: smart: fix memory leak on OOM path
-rw-r--r--src/transports/smart_protocol.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/transports/smart_protocol.c b/src/transports/smart_protocol.c
index 1d46d4bc9..6363378ec 100644
--- a/src/transports/smart_protocol.c
+++ b/src/transports/smart_protocol.c
@@ -108,6 +108,7 @@ static int append_symref(const char **out, git_vector *symrefs, const char *ptr)
if (giterr_last()->klass != GITERR_NOMEMORY)
goto on_invalid;
+ git__free(mapping);
return error;
}
@@ -120,6 +121,7 @@ static int append_symref(const char **out, git_vector *symrefs, const char *ptr)
on_invalid:
giterr_set(GITERR_NET, "remote sent invalid symref");
git_refspec__free(mapping);
+ git__free(mapping);
return -1;
}