Revert "[PATCH] plug memory leak in diff.c::diff_free_filepair()"
This reverts 068eac91ce04b9aca163acb1927c3878c45d1a07 commit.
diff --git a/diff.c b/diff.c
index 1059049..05a0663 100644
--- a/diff.c
+++ b/diff.c
@@ -402,13 +402,14 @@
return 0;
}
-void diff_free_filespec(struct diff_filespec *s)
+void diff_free_filespec_data(struct diff_filespec *s)
{
if (s->should_free)
free(s->data);
else if (s->should_munmap)
munmap(s->data, s->size);
- free(s);
+ s->should_free = s->should_munmap = 0;
+ s->data = NULL;
}
static void prep_temp_blob(struct diff_tempfile *temp,
@@ -767,8 +768,8 @@
void diff_free_filepair(struct diff_filepair *p)
{
- diff_free_filespec(p->one);
- diff_free_filespec(p->two);
+ diff_free_filespec_data(p->one);
+ diff_free_filespec_data(p->two);
free(p);
}