summaryrefslogtreecommitdiff
path: root/streaming.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2015-04-14 18:49:09 (GMT)
committerJunio C Hamano <gitster@pobox.com>2015-04-14 18:49:09 (GMT)
commitd2ae751b1cae0674e0a1f7fe4da0a341365cefbb (patch)
treeb17a8284ef636947f9a85f15fbfa965919bd1654 /streaming.c
parent0cb7054e755f5d2bf9e7ba7471481cbd0957fb96 (diff)
parent9ce4ad3e0eac33b4cae38ebd76c26ddba2468631 (diff)
downloadgit-d2ae751b1cae0674e0a1f7fe4da0a341365cefbb.zip
git-d2ae751b1cae0674e0a1f7fe4da0a341365cefbb.tar.gz
git-d2ae751b1cae0674e0a1f7fe4da0a341365cefbb.tar.bz2
Merge branch 'sb/plug-streaming-leak'
* sb/plug-streaming-leak: streaming.c: fix a memleak
Diffstat (limited to 'streaming.c')
-rw-r--r--streaming.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/streaming.c b/streaming.c
index 2ff036a..811fcc2 100644
--- a/streaming.c
+++ b/streaming.c
@@ -507,8 +507,11 @@ int stream_blob_to_fd(int fd, unsigned const char *sha1, struct stream_filter *f
int result = -1;
st = open_istream(sha1, &type, &sz, filter);
- if (!st)
+ if (!st) {
+ if (filter)
+ free_stream_filter(filter);
return result;
+ }
if (type != OBJ_BLOB)
goto close_and_exit;
for (;;) {