summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/netlist/analog/nld_mosfet.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/netlist/analog/nld_mosfet.cpp')
-rw-r--r--src/lib/netlist/analog/nld_mosfet.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/lib/netlist/analog/nld_mosfet.cpp b/src/lib/netlist/analog/nld_mosfet.cpp
index 0bc46adb002..acc7ad8359f 100644
--- a/src/lib/netlist/analog/nld_mosfet.cpp
+++ b/src/lib/netlist/analog/nld_mosfet.cpp
@@ -333,13 +333,12 @@ namespace analog
NETLIB_HANDLERI(termhandler)
{
- // FIXME: This should never be called
- if (!m_SG.P().net().is_rail_net())
- m_SG.P().solve_now(); // Basis
- else if (!m_SG.N().net().is_rail_net())
- m_SG.N().solve_now(); // Emitter
+ // only called if connected to a rail net ==> notify the solver to recalculate
+ auto *solv(m_SG.solver());
+ if (solv != nullptr)
+ solv->solve_now();
else
- m_DG.N().solve_now(); // Collector
+ m_DG.solver()->solve_now();
}
NETLIB_UPDATE_PARAMI();
NETLIB_UPDATE_TERMINALSI();