From 98ee520907f7f2a50fa43edfd213dfc8eae07033 Mon Sep 17 00:00:00 2001 From: Allan McRae Date: Wed, 24 Mar 2010 15:59:04 +1000 Subject: Sort and avoid duplicates in -Sii output Signed-off-by: Allan McRae Signed-off-by: Dan McGee --- lib/libalpm/package.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/libalpm/package.c b/lib/libalpm/package.c index f1682cbc..ed6d71d0 100644 --- a/lib/libalpm/package.c +++ b/lib/libalpm/package.c @@ -565,7 +565,9 @@ static void find_requiredby(pmpkg_t *pkg, pmdb_t *db, alpm_list_t **reqs) pmpkg_t *cachepkg = i->data; if(_alpm_dep_edge(cachepkg, pkg)) { const char *cachepkgname = cachepkg->name; - *reqs = alpm_list_add(*reqs, strdup(cachepkgname)); + if(alpm_list_find_str(*reqs, cachepkgname) == 0) { + *reqs = alpm_list_add(*reqs, strdup(cachepkgname)); + } } } } @@ -595,6 +597,7 @@ alpm_list_t SYMEXPORT *alpm_pkg_compute_requiredby(pmpkg_t *pkg) for(i = handle->dbs_sync; i; i = i->next) { db = i->data; find_requiredby(pkg, db, &reqs); + reqs = alpm_list_msort(reqs, alpm_list_count(reqs), _alpm_str_cmp); } } } -- cgit v1.2.3-24-g4f1b