From 6dd2ecf4fa19346193e4ea69419c1b1004fb66e8 Mon Sep 17 00:00:00 2001 From: Aurelien Foret Date: Sun, 15 Jan 2006 15:55:16 +0000 Subject: pulled out conflict checkings from checkdeps() in its own function: checkconflicts() --- lib/libalpm/remove.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'lib/libalpm/remove.c') diff --git a/lib/libalpm/remove.c b/lib/libalpm/remove.c index 5b7fd418..3e810203 100644 --- a/lib/libalpm/remove.c +++ b/lib/libalpm/remove.c @@ -83,7 +83,8 @@ int remove_prepare(pmtrans_t *trans, pmdb_t *db, PMList **data) EVENT(trans, PM_TRANS_EVT_CHECKDEPS_START, NULL, NULL); _alpm_log(PM_LOG_FLOW1, "looking for unsatisfied dependencies"); - if((lp = checkdeps(db, trans->type, trans->packages)) != NULL) { + lp = checkdeps(db, trans->type, trans->packages); + if(lp != NULL) { if(trans->flags & PM_TRANS_FLAG_CASCADE) { while(lp) { PMList *j; @@ -101,6 +102,8 @@ int remove_prepare(pmtrans_t *trans, pmdb_t *db, PMList **data) } else { if(data) { *data = lp; + } else { + FREELIST(lp); } RET_ERR(PM_ERR_UNSATISFIED_DEPS, -1); } -- cgit v1.2.3-54-g00ecf