From 226406f693013ea3eadab258cb5fc9d8e83df916 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Fri, 27 May 2005 15:50:30 -0700 Subject: [PATCH] Introduce diff_free_filepair() funcion. This introduces a new function to free a common data structure, and plugs some leaks. Signed-off-by: Junio C Hamano Signed-off-by: Linus Torvalds --- diff.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'diff.c') diff --git a/diff.c b/diff.c index f745cdd6e8..680b521a8b 100644 --- a/diff.c +++ b/diff.c @@ -521,6 +521,13 @@ struct diff_filepair *diff_queue(struct diff_queue_struct *queue, return dp; } +void diff_free_filepair(struct diff_filepair *p) +{ + diff_free_filespec_data(p->one); + diff_free_filespec_data(p->two); + free(p); +} + static void diff_flush_raw(struct diff_filepair *p, int line_termination, int inter_name_termination) @@ -817,12 +824,8 @@ void diff_flush(int diff_output_style, int resolve_rename_copy) break; } } - for (i = 0; i < q->nr; i++) { - struct diff_filepair *p = q->queue[i]; - diff_free_filespec_data(p->one); - diff_free_filespec_data(p->two); - free(p); - } + for (i = 0; i < q->nr; i++) + diff_free_filepair(q->queue[i]); free(q->queue); q->queue = NULL; q->nr = q->alloc = 0; -- cgit v1.3