lib/transaction_revdeps.c: fix provides/replaces #218

This reverts a change that solved another issue and marks the test case
for the other issue as expected failure.

The other issue is not as important as this, as it blocks updating a lot
of systems.
This commit is contained in:
Duncan Overbruck 2020-01-31 16:32:38 +01:00
parent 8698735939
commit 8637269b38
No known key found for this signature in database
GPG Key ID: 335C1D17EC3D6E35
2 changed files with 11 additions and 0 deletions

View File

@ -232,6 +232,16 @@ xbps_transaction_revdeps(struct xbps_handle *xhp, xbps_array_t pkgs)
free(pkgname); free(pkgname);
continue; continue;
} }
/*
* Installed package conflicts with package
* in transaction being updated, check
* if a new version of this conflicting package
* is in the transaction.
*/
if (xbps_find_pkg_in_array(pkgs, pkgname, "update")) {
free(pkgname);
continue;
}
free(pkgname); free(pkgname);
broken_pkg(mdeps, curpkgver, pkgver, tract); broken_pkg(mdeps, curpkgver, pkgver, tract);
} }

View File

@ -598,6 +598,7 @@ atf_test_case update_and_install
update_and_install_head() { update_and_install_head() {
atf_set "descr" "Tests for pkg install: update installed version and install new from other repo" atf_set "descr" "Tests for pkg install: update installed version and install new from other repo"
atf_expect_fail "fix introduced a regression"
} }
update_and_install_body() { update_and_install_body() {