diff options
| author | Daniel Shaw <t-dansha@microsoft.com> | 2017-06-05 15:58:47 -0700 |
|---|---|---|
| committer | Daniel Shaw <t-dansha@microsoft.com> | 2017-06-06 14:02:59 -0700 |
| commit | 264cd050e6280e5b87ec055e0a9d8985a7ba30b3 (patch) | |
| tree | f508fa927970257011747643f893b182691dac1e /toolsrc/src/commands_build.cpp | |
| parent | 7b4d83c444b0e7fee241ed293614efca17c67201 (diff) | |
| download | vcpkg-264cd050e6280e5b87ec055e0a9d8985a7ba30b3.tar.gz vcpkg-264cd050e6280e5b87ec055e0a9d8985a7ba30b3.zip | |
ExpectedT factory class
Diffstat (limited to 'toolsrc/src/commands_build.cpp')
| -rw-r--r-- | toolsrc/src/commands_build.cpp | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/toolsrc/src/commands_build.cpp b/toolsrc/src/commands_build.cpp index ec6586fa3..4a0cee021 100644 --- a/toolsrc/src/commands_build.cpp +++ b/toolsrc/src/commands_build.cpp @@ -33,13 +33,16 @@ namespace vcpkg::Commands::BuildCommand Checks::exit_success(VCPKG_LINE_INFO); } - const Expected<SourceParagraph> maybe_spgh = Paragraphs::try_load_port(paths.get_filesystem(), port_dir); - Checks::check_exit(VCPKG_LINE_INFO, - !maybe_spgh.error_code(), - "Could not find package %s: %s", - spec, - maybe_spgh.error_code().message()); - const SourceParagraph& spgh = *maybe_spgh.get(); + const ExpectedT<SourceParagraph, ParseControlErrorInfo> maybe_spgh = + Paragraphs::try_load_port(paths.get_filesystem(), port_dir); + // why do we add a const here + if (!maybe_spgh) + { + print_error_message(maybe_spgh.error()); + Checks::exit_fail(VCPKG_LINE_INFO); + } + + const SourceParagraph& spgh = maybe_spgh.value_or_exit(VCPKG_LINE_INFO); Checks::check_exit(VCPKG_LINE_INFO, spec.name() == spgh.name, "The Name: field inside the CONTROL does not match the port directory: '%s' != '%s'", |
