diff options
author | Joseph Hunkeler <jhunkeler@gmail.com> | 2020-02-25 13:00:58 -0500 |
---|---|---|
committer | Joseph Hunkeler <jhunkeler@gmail.com> | 2020-02-25 13:00:58 -0500 |
commit | bc30328962bb48c932239dc6e3e59c4f299c5d65 (patch) | |
tree | 10c63c1e4ffec0d8b95fd1d7e220a2f779632478 /src/resolve.c | |
parent | 3a44e7a66ce24212bd6bebca5077aee6b7550fcb (diff) | |
download | spmc-bc30328962bb48c932239dc6e3e59c4f299c5d65.tar.gz |
Free ManifestPackage variables
Diffstat (limited to 'src/resolve.c')
-rw-r--r-- | src/resolve.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/resolve.c b/src/resolve.c index 0bb207e..ef1f15b 100644 --- a/src/resolve.c +++ b/src/resolve.c @@ -28,20 +28,23 @@ int resolve_has_dependency(const char *archive) { */ ManifestPackage **resolve_dependencies(ManifestList *manifests, const char *spec) { ManifestPackage *package = manifestlist_search(manifests, spec); + ManifestPackage *requirement = NULL; if (package == NULL) { return NULL; } for (size_t i = 0; i < package->requirements_records && i < SPM_REQUIREMENT_MAX; i++) { - ManifestPackage *requirement = manifestlist_search(manifests, package->requirements[i]); + requirement = manifestlist_search(manifests, package->requirements[i]); if (requirement == NULL) { break; } if (resolve_has_dependency(requirement->archive)) { + free(requirement); continue; } resolve_dependencies(manifests, requirement->archive); requirements[i] = requirement; } + free(package); return requirements; }
\ No newline at end of file |