Fix segfault (infinite recursion)
This commit is contained in:
parent
87ab33dce9
commit
feb7dc6da6
@ -226,10 +226,22 @@ void get_all_service_env_vars(const std::string &server_name, const std::string
|
||||
all_env_vars.merge(env_vars);
|
||||
}
|
||||
|
||||
// determine template name.
|
||||
auto it = all_env_vars.find("TEMPLATE");
|
||||
if (it == all_env_vars.end()) {
|
||||
std::cerr << "Error: TEMPLATE variable not defined in service " << service_name << " on server " << server_name << std::endl;
|
||||
return;
|
||||
}
|
||||
std::string template_name = it->second;
|
||||
template_info tinfo;
|
||||
if (!get_template_info(template_name, tinfo)) {
|
||||
std::cerr << "Error: Template '" << template_name << "' not found" << std::endl;
|
||||
return;
|
||||
}
|
||||
|
||||
{ // load _default.env from the template on this machine - gets overridden by service.env
|
||||
std::map<std::string, std::string> env_vars;
|
||||
auto service_info = get_service_info(server_name, service_name);
|
||||
std::string defaultenvpath = service_info.local_template_path + "/_default.env";
|
||||
std::string defaultenvpath = tinfo.local_template_path + "/_default.env";
|
||||
if (std::filesystem::exists(defaultenvpath)) {
|
||||
envmanager env_manager(defaultenvpath);
|
||||
env_manager.load();
|
||||
|
Loading…
x
Reference in New Issue
Block a user