>From 7aff060a6288b250d398fb47abcb2aa26f05a508 Mon Sep 17 00:00:00 2001 From: Nagy Gabor <[EMAIL PROTECTED]> Date: Wed, 16 Jul 2008 15:27:37 +0200 Subject: [PATCH] Fix a possible segfault in alpm/remove.c
Before removing a package from target list (in remove_prepare_keep_needed), we should check whether we have already removed it. Signed-off-by: Nagy Gabor <[EMAIL PROTECTED]> --- lib/libalpm/remove.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/lib/libalpm/remove.c b/lib/libalpm/remove.c index 625abe6..864fafa 100644 --- a/lib/libalpm/remove.c +++ b/lib/libalpm/remove.c @@ -120,6 +120,9 @@ static void remove_prepare_keep_needed(pmtrans_t *trans, pmdb_t *db, pmdepmissing_t *miss = (pmdepmissing_t *)i->data; void *vpkg; pmpkg_t *pkg = _alpm_pkg_find(trans->packages, miss->causingpkg); + if(pkg == NULL) { + continue; + } trans->packages = alpm_list_remove(trans->packages, pkg, _alpm_pkg_cmp, &vpkg); pkg = vpkg; -- 1.5.6.2 _______________________________________________ pacman-dev mailing list pacman-dev@archlinux.org http://archlinux.org/mailman/listinfo/pacman-dev