summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/netlist/nl_setup.cpp
diff options
context:
space:
mode:
author couriersud <couriersud@gmx.org>2020-02-17 22:43:24 +0100
committer couriersud <couriersud@gmx.org>2020-02-17 22:43:49 +0100
commit92143473341076743ff900a185df3ba8431ecbf0 (patch)
treec60f67f4ded9690d6e533fcfd6e14696c1cf7022 /src/lib/netlist/nl_setup.cpp
parent3f52d5be2263e757e31abde677494ab1a9876da5 (diff)
netlist: fix log file option in nltool. (nw)
Diffstat (limited to 'src/lib/netlist/nl_setup.cpp')
-rwxr-xr-x[-rw-r--r--]src/lib/netlist/nl_setup.cpp33
1 files changed, 17 insertions, 16 deletions
diff --git a/src/lib/netlist/nl_setup.cpp b/src/lib/netlist/nl_setup.cpp
index 727b37c54c6..9973e6da93d 100644..100755
--- a/src/lib/netlist/nl_setup.cpp
+++ b/src/lib/netlist/nl_setup.cpp
@@ -893,7 +893,7 @@ void setup_t::resolve_inputs()
// after all other terminals were connected.
unsigned tries = m_netlist_params->m_max_link_loops();
- while (!m_links.empty() > 0 && tries > 0)
+ while (!m_links.empty() && tries > 0)
{
for (auto li = m_links.begin(); li != m_links.end(); )
@@ -967,22 +967,16 @@ void setup_t::resolve_inputs()
}
-void setup_t::register_dynamic_log_devices()
+void setup_t::register_dynamic_log_devices(const std::vector<pstring> &loglist)
{
- pstring env = plib::util::environment("NL_LOGS", "");
-
- if (env != "")
+ log().debug("Creating dynamic logs ...");
+ for (const pstring &ll : loglist)
{
- log().debug("Creating dynamic logs ...");
- std::vector<pstring> loglist(plib::psplit(env, ":"));
- for (const pstring &ll : loglist)
- {
- pstring name = "log_" + ll;
- auto nc = factory().factory_by_name("LOG")->Create(m_nlstate.pool(), m_nlstate, name);
- register_link(name + ".I", ll);
- log().debug(" dynamic link {1}: <{2}>\n",ll, name);
- m_nlstate.register_device(nc->name(), std::move(nc));
- }
+ pstring name = "log_" + ll;
+ auto nc = factory().factory_by_name("LOG")->Create(m_nlstate.pool(), m_nlstate, name);
+ register_link(name + ".I", ll);
+ log().debug(" dynamic link {1}: <{2}>\n",ll, name);
+ m_nlstate.register_device(nc->name(), std::move(nc));
}
}
@@ -1207,7 +1201,14 @@ void setup_t::delete_empty_nets()
void setup_t::prepare_to_run()
{
- register_dynamic_log_devices();
+ pstring envlog = plib::util::environment("NL_LOGS", "");
+
+ if (envlog != "")
+ {
+ std::vector<pstring> loglist(plib::psplit(envlog, ":"));
+ register_dynamic_log_devices(loglist);
+ }
+
// make sure the solver and parameters are started first!