Fix bug #443436: endless loop if indirect dep missing in repo.
Make xbps_find_deps_in_pkg() return ENOENT when missing deps are found. --HG-- extra : convert_revision : xtraeme%40gmail.com-20091005195748-nhhsgldgg3hwfcz7
This commit is contained in:
parent
f02dd4ccb4
commit
1afb358221
@ -143,6 +143,7 @@ xbps_find_deps_in_pkg(prop_dictionary_t master, prop_dictionary_t pkg)
|
|||||||
prop_array_t pkg_rdeps, missing_rdeps;
|
prop_array_t pkg_rdeps, missing_rdeps;
|
||||||
struct repository_data *rdata;
|
struct repository_data *rdata;
|
||||||
int rv = 0;
|
int rv = 0;
|
||||||
|
bool missingdeps = false;
|
||||||
|
|
||||||
assert(pkg != NULL);
|
assert(pkg != NULL);
|
||||||
assert(iter != NULL);
|
assert(iter != NULL);
|
||||||
@ -165,6 +166,7 @@ xbps_find_deps_in_pkg(prop_dictionary_t master, prop_dictionary_t pkg)
|
|||||||
if (rv != 0) {
|
if (rv != 0) {
|
||||||
if (rv == ENOENT) {
|
if (rv == ENOENT) {
|
||||||
rv = 0;
|
rv = 0;
|
||||||
|
missingdeps = true;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -185,7 +187,10 @@ xbps_find_deps_in_pkg(prop_dictionary_t master, prop_dictionary_t pkg)
|
|||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
if (missingdeps)
|
||||||
|
rv = ENOENT;
|
||||||
|
|
||||||
|
return rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
|
Loading…
Reference in New Issue
Block a user