diff options
| author | Alexander Karatarakis <alkarata@microsoft.com> | 2017-04-12 16:19:52 -0700 |
|---|---|---|
| committer | Alexander Karatarakis <alkarata@microsoft.com> | 2017-04-12 22:05:03 -0700 |
| commit | 88e0246c771d5910fc23849a451510159b85aca7 (patch) | |
| tree | 7c865e7edf299772aab621df33b9a54041755162 | |
| parent | 5afcd0afe0484ecb646e4c17f0d38814eba34065 (diff) | |
| download | vcpkg-88e0246c771d5910fc23849a451510159b85aca7.tar.gz vcpkg-88e0246c771d5910fc23849a451510159b85aca7.zip | |
Improve create_remove_plan (still using Graph)
| -rw-r--r-- | toolsrc/src/vcpkg_Dependencies.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/toolsrc/src/vcpkg_Dependencies.cpp b/toolsrc/src/vcpkg_Dependencies.cpp index 6e22c8b82..b714abdae 100644 --- a/toolsrc/src/vcpkg_Dependencies.cpp +++ b/toolsrc/src/vcpkg_Dependencies.cpp @@ -190,10 +190,9 @@ namespace vcpkg::Dependencies continue; } - for (const std::unique_ptr<StatusParagraph>& an_installed_package : status_db) + const std::vector<StatusParagraph*> installed_ports = get_installed_ports(status_db); + for (const StatusParagraph* an_installed_package : installed_ports) { - if (an_installed_package->want != Want::INSTALL) - continue; if (an_installed_package->package.spec.triplet() != spec.triplet()) continue; @@ -203,8 +202,8 @@ namespace vcpkg::Dependencies continue; } - graph.add_edge(spec, an_installed_package.get()->package.spec); - examine_stack.push_back(an_installed_package.get()->package.spec); + graph.add_edge(spec, an_installed_package->package.spec); + examine_stack.push_back(an_installed_package->package.spec); } const RequestType request_type = specs_as_set.find(spec) != specs_as_set.end() ? RequestType::USER_REQUESTED : RequestType::AUTO_SELECTED; |
