aboutsummaryrefslogtreecommitdiff
path: root/toolsrc/include
diff options
context:
space:
mode:
Diffstat (limited to 'toolsrc/include')
-rw-r--r--toolsrc/include/vcpkg/base/expected.h2
-rw-r--r--toolsrc/include/vcpkg/vcpkgcmdarguments.h6
2 files changed, 5 insertions, 3 deletions
diff --git a/toolsrc/include/vcpkg/base/expected.h b/toolsrc/include/vcpkg/base/expected.h
index 13e70057d..f24366c4a 100644
--- a/toolsrc/include/vcpkg/base/expected.h
+++ b/toolsrc/include/vcpkg/base/expected.h
@@ -229,7 +229,7 @@ namespace vcpkg
if (m_s.has_error())
{
System::print2(System::Color::error, m_s.to_string(), "\n");
- Checks::unreachable(line_info);
+ Checks::exit_fail(line_info);
}
}
diff --git a/toolsrc/include/vcpkg/vcpkgcmdarguments.h b/toolsrc/include/vcpkg/vcpkgcmdarguments.h
index 365f892a0..14208e926 100644
--- a/toolsrc/include/vcpkg/vcpkgcmdarguments.h
+++ b/toolsrc/include/vcpkg/vcpkgcmdarguments.h
@@ -212,7 +212,6 @@ namespace vcpkg
}
bool output_json() const { return json.value_or(false); }
- bool is_recursive_invocation() const { return m_is_recursive_invocation; }
std::string command;
std::vector<std::string> command_arguments;
@@ -221,13 +220,16 @@ namespace vcpkg
void imbue_from_environment();
+ // Applies recursive settings from the environment or sets a global environment variable
+ // to be consumed by subprocesses; may only be called once per process.
+ static void imbue_or_apply_process_recursion(VcpkgCmdArguments& args);
+
void check_feature_flag_consistency() const;
void debug_print_feature_flags() const;
void track_feature_flag_metrics() const;
private:
- bool m_is_recursive_invocation = false;
std::unordered_set<std::string> command_switches;
std::unordered_map<std::string, std::vector<std::string>> command_options;
};