index : pacman | |
Archlinux32 fork of pacman | gitolite user |
summaryrefslogtreecommitdiff |
-rw-r--r-- | lib/libalpm/conflict.c | 10 | ||||
-rw-r--r-- | pactest/tests/conflict002.py | 13 | ||||
-rw-r--r-- | pactest/tests/conflict003.py | 13 |
diff --git a/lib/libalpm/conflict.c b/lib/libalpm/conflict.c index d52f7e12..1baa0c27 100644 --- a/lib/libalpm/conflict.c +++ b/lib/libalpm/conflict.c @@ -112,13 +112,6 @@ static void check_conflict(alpm_list_t *list1, alpm_list_t *list2, for(j = alpm_pkg_get_conflicts(pkg1); j; j = j->next) { const char *conflict = j->data; - if(strcmp(pkg1name, conflict) == 0) { - /* a package cannot conflict with itself -- that's just not nice */ - _alpm_log(PM_LOG_DEBUG, "package '%s' conflicts with itself - packaging error", - pkg1name); - continue; - } - for(k = list2; k; k = k->next) { pmpkg_t *pkg2 = k->data; const char *pkg2name = alpm_pkg_get_name(pkg2); @@ -140,8 +133,7 @@ static void check_conflict(alpm_list_t *list1, alpm_list_t *list2, } } -/* Returns a alpm_list_t* of pmdepmissing_t pointers. - * conflicts are always name only */ +/* Returns a alpm_list_t* of pmdepmissing_t pointers. */ alpm_list_t *_alpm_checkconflicts(pmdb_t *db, alpm_list_t *packages) { alpm_list_t *baddeps = NULL; diff --git a/pactest/tests/conflict002.py b/pactest/tests/conflict002.py new file mode 100644 index 00000000..2e326f52 --- /dev/null +++ b/pactest/tests/conflict002.py @@ -0,0 +1,13 @@ +self.description = "conflict with version (conflict)" + +p = pmpkg("pkg1") +p.conflicts = ["pkg2<=1.0-2"] +self.addpkg(p); + +lp = pmpkg("pkg2", "1.0-1") +self.addpkg2db("local", lp) + +self.args = "-A %s" % p.filename() +self.addrule("PACMAN_RETCODE=1") +self.addrule("!PKG_EXIST=pkg1") +self.addrule("PKG_EXIST=pkg2") diff --git a/pactest/tests/conflict003.py b/pactest/tests/conflict003.py new file mode 100644 index 00000000..7205086a --- /dev/null +++ b/pactest/tests/conflict003.py @@ -0,0 +1,13 @@ +self.description = "conflict with version (no conflict)" + +p = pmpkg("pkg1") +p.conflicts = ["pkg2=1.0-2"] +self.addpkg(p); + +lp = pmpkg("pkg2", "1.0-1") +self.addpkg2db("local", lp) + +self.args = "-A %s" % p.filename() +self.addrule("PACMAN_RETCODE=0") +self.addrule("PKG_EXIST=pkg1") +self.addrule("PKG_EXIST=pkg2") |