From 9468520e697f511accc8fe165e0f8c15419b49d8 Mon Sep 17 00:00:00 2001 From: Juan RP Date: Thu, 23 Jun 2011 11:30:04 +0200 Subject: [PATCH] libxbps: fixed a bug in virtual pkg handling. When resolving dependencies it didn't take into account virtual packages in some cases. --- lib/repository_finddeps.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/lib/repository_finddeps.c b/lib/repository_finddeps.c index 4ae3b567..19096271 100644 --- a/lib/repository_finddeps.c +++ b/lib/repository_finddeps.c @@ -326,6 +326,19 @@ find_repo_deps(prop_dictionary_t transd, /* transaction dictionary */ break; } free(pkgname); + if (xbps_find_virtual_pkg_in_dict(tmpd, + reqpkg, true)) { + /* + * Check if required dependency is a virtual + * package and is satisfied by an + * installed package. + */ + xbps_dbg_printf_append("[virtual] satisfied by " + "`%s'.\n", pkgver_q); + prop_object_release(tmpd); + prop_object_release(curpkgd); + continue; + } rv = xbps_pkgpattern_match(pkgver_q, reqpkg); if (rv == 0) { /*