From 53fdae9a1977168767c27a54cf7e4a92394eb6a0 Mon Sep 17 00:00:00 2001 From: Dan McGee Date: Sun, 11 Nov 2007 12:59:45 -0600 Subject: [PATCH] Fix memleak with new alpm_list_reverse usage Signed-off-by: Dan McGee --- lib/libalpm/remove.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/libalpm/remove.c b/lib/libalpm/remove.c index a4c3c15c..c4e44398 100644 --- a/lib/libalpm/remove.c +++ b/lib/libalpm/remove.c @@ -301,11 +301,12 @@ int _alpm_remove_commit(pmtrans_t *trans, pmdb_t *db) int filenum = alpm_list_count(files); double percent = 0.0; + alpm_list_t *newfiles; _alpm_log(PM_LOG_DEBUG, "removing %d files\n", filenum); /* iterate through the list backwards, unlinking files */ - files = alpm_list_reverse(files); - for(lp = files; lp; lp = alpm_list_next(lp)) { + newfiles = alpm_list_reverse(files); + for(lp = newfiles; lp; lp = alpm_list_next(lp)) { unlink_file(info, lp, trans); /* update progress bar after each file */ @@ -315,6 +316,7 @@ int _alpm_remove_commit(pmtrans_t *trans, pmdb_t *db) (pkg_count - alpm_list_count(targ) + 1)); position++; } + free(newfiles); } /* set progress to 100% after we finish unlinking files */