From 8f824e70bbaf9cb2b72103fe378d93e3ded8cdee Mon Sep 17 00:00:00 2001 From: Chantry Xavier Date: Fri, 16 Nov 2007 15:34:04 +0100 Subject: Remove the IgnorePkg handling from alpm_pkg_compare_version. And check the IgnorePkg handling is done correctly in the other places. For example, -Qu and -Su will automatically skip the ignored packages (-Su will print a warning), but -S will install ignored packages anyway, because it was asked explicitly. Signed-off-by: Chantry Xavier --- lib/libalpm/db.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'lib/libalpm/db.c') diff --git a/lib/libalpm/db.c b/lib/libalpm/db.c index 1e2e6b24..2cff1df3 100644 --- a/lib/libalpm/db.c +++ b/lib/libalpm/db.c @@ -464,7 +464,7 @@ alpm_list_t SYMEXPORT *alpm_db_get_upgrades(void) if(strcmp(k->data, alpm_pkg_get_name(lpkg)) == 0) { _alpm_log(PM_LOG_DEBUG, "checking replacement '%s' for package '%s'\n", (char *)k->data, alpm_pkg_get_name(spkg)); - if(_alpm_pkg_should_ignore(lpkg)) { + if(_alpm_pkg_should_ignore(spkg) || _alpm_pkg_should_ignore(lpkg)) { _alpm_log(PM_LOG_WARNING, _("%s-%s: ignoring package upgrade (to be replaced by %s-%s)\n"), alpm_pkg_get_name(lpkg), alpm_pkg_get_version(lpkg), alpm_pkg_get_name(spkg), alpm_pkg_get_version(spkg)); @@ -545,6 +545,10 @@ alpm_list_t SYMEXPORT *alpm_db_get_upgrades(void) syncpkg = _alpm_sync_find(syncpkgs, alpm_pkg_get_name(local)); if(!syncpkg) { + /* If package is in the ignorepkg list, skip it */ + if(_alpm_pkg_should_ignore(spkg)) { + continue; + } pmpkg_t *dummy = _alpm_pkg_new(alpm_pkg_get_name(local), alpm_pkg_get_version(local)); if(dummy == NULL) { -- cgit v1.2.3-24-g4f1b