summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Steinhardt <ps@pks.im>2017-09-15 10:46:26 +0200
committerPatrick Steinhardt <ps@pks.im>2017-09-15 10:46:26 +0200
commit046b081ab52e5b3f04f0931728099f743ca5a924 (patch)
treed3a19c67144c77a08cdbff0e9a93d56956170f76
parente098b5f5071ca3eeee138785de1b8db3c1152f8d (diff)
downloadlibgit2-046b081ab52e5b3f04f0931728099f743ca5a924.tar.gz
diff: cleanup hash ctx in `git_diff_patchid`
After initializing the hash context in `git_diff_patchid`, we never proceed to call `git_hash_ctx_cleanup` on it. While this doesn't really matter on most hash implementations, this causes a memory leak on Win32 due to CNG system requiring a `malloc` call. Fix the memory leak by always calling `git_hash_ctx_cleanup` before exiting.
-rw-r--r--src/diff.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/diff.c b/src/diff.c
index 895cdae68..b2a5ff947 100644
--- a/src/diff.c
+++ b/src/diff.c
@@ -517,5 +517,6 @@ int git_diff_patchid(git_oid *out, git_diff *diff, git_diff_patchid_options *opt
git_oid_cpy(out, &args.result);
out:
+ git_hash_ctx_cleanup(&args.ctx);
return error;
}