diff options
author | Joseph Hunkeler <jhunkeler@gmail.com> | 2020-03-17 16:09:20 -0400 |
---|---|---|
committer | Joseph Hunkeler <jhunkeler@gmail.com> | 2020-03-17 16:09:20 -0400 |
commit | a4a6f109aa043397b7e32f3f2ebff77c51fd404f (patch) | |
tree | fc71ab3b34209d118f6690231e0e27a7eabd9e14 /src | |
parent | acfe4e4a226372e58b0b4e2e361d1ba20c4fb301 (diff) | |
download | spmc-a4a6f109aa043397b7e32f3f2ebff77c51fd404f.tar.gz |
Missing packages are failures
* Remove accidental req_i++ (resulted in duplicate array records)
Diffstat (limited to 'src')
-rw-r--r-- | src/resolve.c | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/src/resolve.c b/src/resolve.c index db86867..bed9c60 100644 --- a/src/resolve.c +++ b/src/resolve.c @@ -42,27 +42,23 @@ ManifestPackage **resolve_dependencies(ManifestList *manifests, const char *spec return requirements; } + if (!resolve_has_dependency(package->archive)) { + requirements[req_i] = package; + req_i++; + } + for (size_t i = 0; i < package->requirements_records && i < SPM_REQUIREMENT_MAX; i++) { requirement = manifestlist_search(manifests, package->requirements[i]); if (requirement == NULL) { - fprintf(stderr, "WARNING: unable to resolve package via manifestlist_search(): '%s'\n", package->requirements[i]); - break; + fprintf(stderr, "ERROR: unable to resolve package via manifestlist_search(): '%s'\n", package->requirements[i]); + exit(1); } if (resolve_has_dependency(requirement->archive)) { free(requirement); } else { resolve_dependencies(manifests, requirement->archive); requirements[req_i] = requirement; - req_i++; } } - - if (!resolve_has_dependency(package->archive)) { - requirements[req_i] = package; -#ifdef _DEBUG - printf("%s: requirements[%zu] = '%s'\n", __FUNCTION__, req_i, requirements[req_i]->archive); -#endif - } - //free(package); return requirements; }
\ No newline at end of file |