diff options
| author | Alexander Karatarakis <alkarata@microsoft.com> | 2016-09-30 17:01:41 -0700 |
|---|---|---|
| committer | Alexander Karatarakis <alkarata@microsoft.com> | 2016-09-30 17:01:41 -0700 |
| commit | 51bc83c70e915892a658795f51bb3bb10360ee8d (patch) | |
| tree | 4d62ed612f908fda78ec370d87e72d400525e6db | |
| parent | e3455e281bd9a2147259f7ba769211b9709e51da (diff) | |
| download | vcpkg-51bc83c70e915892a658795f51bb3bb10360ee8d.tar.gz vcpkg-51bc83c70e915892a658795f51bb3bb10360ee8d.zip | |
Added triplet check in all commands that obtain package_specs
| -rw-r--r-- | toolsrc/src/commands_create.cpp | 2 | ||||
| -rw-r--r-- | toolsrc/src/commands_edit.cpp | 1 | ||||
| -rw-r--r-- | toolsrc/src/commands_installation.cpp | 3 | ||||
| -rw-r--r-- | toolsrc/src/commands_remove.cpp | 1 |
4 files changed, 7 insertions, 0 deletions
diff --git a/toolsrc/src/commands_create.cpp b/toolsrc/src/commands_create.cpp index d365dac70..5e88f9c65 100644 --- a/toolsrc/src/commands_create.cpp +++ b/toolsrc/src/commands_create.cpp @@ -2,6 +2,7 @@ #include "vcpkg_System.h" #include "vcpkg_Environment.h" #include "vcpkg_Files.h" +#include "vcpkg_Input.h" namespace vcpkg { @@ -14,6 +15,7 @@ namespace vcpkg expected<package_spec> current_spec = package_spec::from_string(args.command_arguments[0], default_target_triplet); if (const package_spec* spec = current_spec.get()) { + Input::check_triplet(spec->target_triplet, paths); Environment::ensure_utilities_on_path(paths); // Space OR define the FILENAME with proper spacing diff --git a/toolsrc/src/commands_edit.cpp b/toolsrc/src/commands_edit.cpp index b17c02d5a..a3e2f402d 100644 --- a/toolsrc/src/commands_edit.cpp +++ b/toolsrc/src/commands_edit.cpp @@ -9,6 +9,7 @@ namespace vcpkg static const std::string example = create_example_string("edit zlib"); args.check_exact_arg_count(1, example.c_str()); const package_spec spec = Input::check_and_get_package_spec(args.command_arguments.at(0), default_target_triplet, example.c_str()); + Input::check_triplet(spec.target_triplet, paths); // Find editor std::wstring env_EDITOR = System::wdupenv_str(L"EDITOR"); diff --git a/toolsrc/src/commands_installation.cpp b/toolsrc/src/commands_installation.cpp index 9eedebdbe..8e66f9548 100644 --- a/toolsrc/src/commands_installation.cpp +++ b/toolsrc/src/commands_installation.cpp @@ -71,6 +71,7 @@ namespace vcpkg StatusParagraphs status_db = database_load_check(paths); std::vector<package_spec> specs = Input::check_and_get_package_specs(args.command_arguments, default_target_triplet, example.c_str()); + Input::check_all_triplets(specs, paths); std::vector<package_spec> install_plan = Dependencies::create_dependency_ordered_install_plan(paths, specs, status_db); Checks::check_exit(!install_plan.empty(), "Install plan cannot be empty"); std::string specs_string = to_string(install_plan[0]); @@ -132,6 +133,7 @@ namespace vcpkg StatusParagraphs status_db = database_load_check(paths); const package_spec spec = Input::check_and_get_package_spec(args.command_arguments.at(0), default_target_triplet, example.c_str()); + Input::check_triplet(spec.target_triplet, paths); std::unordered_set<package_spec> unmet_dependencies = Dependencies::find_unmet_dependencies(paths, spec, status_db); if (!unmet_dependencies.empty()) { @@ -159,6 +161,7 @@ namespace vcpkg expected<package_spec> current_spec = package_spec::from_string(args.command_arguments[0], default_target_triplet); if (auto spec = current_spec.get()) { + Input::check_triplet(spec->target_triplet, paths); Environment::ensure_utilities_on_path(paths); const fs::path port_dir = args.command_arguments.at(1); build_internal(*spec, paths, port_dir); diff --git a/toolsrc/src/commands_remove.cpp b/toolsrc/src/commands_remove.cpp index ebc000040..c458125dd 100644 --- a/toolsrc/src/commands_remove.cpp +++ b/toolsrc/src/commands_remove.cpp @@ -30,6 +30,7 @@ namespace vcpkg auto status_db = database_load_check(paths); std::vector<package_spec> specs = Input::check_and_get_package_specs(args.command_arguments, default_target_triplet, example.c_str()); + Input::check_all_triplets(specs, paths); bool alsoRemoveFolderFromPackages = options.find(OPTION_PURGE) != options.end(); for (const package_spec& spec : specs) |
