summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlos Martín Nieto <carlosmn@github.com>2016-08-09 14:34:55 +0200
committerGitHub <noreply@github.com>2016-08-09 14:34:55 +0200
commit26a8617d96ba96875304d56a7ce698a85e559c43 (patch)
tree936931f25811f76c95fd4c42a9a427b4f4147c3d
parent5961face15148dd13fd89ab946a627a466434461 (diff)
parentb989514405e2223f12040d3f940185378041c95c (diff)
downloadlibgit2-26a8617d96ba96875304d56a7ce698a85e559c43.tar.gz
Merge pull request #3891 from pks-t/pks/stransport-memory-management-improvements
stransport memory management improvements
-rw-r--r--src/stransport_stream.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/stransport_stream.c b/src/stransport_stream.c
index e568620e9..50ed9452c 100644
--- a/src/stransport_stream.c
+++ b/src/stransport_stream.c
@@ -261,6 +261,7 @@ int git_stransport_stream_new(git_stream **out, const char *host, const char *po
st->ctx = SSLCreateContext(NULL, kSSLClientSide, kSSLStreamType);
if (!st->ctx) {
giterr_set(GITERR_NET, "failed to create SSL context");
+ git__free(st);
return -1;
}
@@ -270,7 +271,8 @@ int git_stransport_stream_new(git_stream **out, const char *host, const char *po
(ret = SSLSetProtocolVersionMin(st->ctx, kTLSProtocol1)) != noErr ||
(ret = SSLSetProtocolVersionMax(st->ctx, kTLSProtocol12)) != noErr ||
(ret = SSLSetPeerDomainName(st->ctx, host, strlen(host))) != noErr) {
- git_stream_free((git_stream *)st);
+ CFRelease(st->ctx);
+ git__free(st);
return stransport_error(ret);
}