From 1977128380dcaf1e25fbd7a4a76890a01fd739a4 Mon Sep 17 00:00:00 2001 From: Holger Vogt Date: Sat, 10 Jul 2021 14:11:56 +0200 Subject: [PATCH] Prevent crash when CIDER diode models are used. There is no third node in NUMD or NUMD2, so don't set GENnode(fast)[i]. This patch fixes a bug introduced in 4895a4b5a ("Diode model with selfheating option", 2021-04-11) --- src/spicelib/parser/inp2d.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/spicelib/parser/inp2d.c b/src/spicelib/parser/inp2d.c index 7bc6a5443..b3247d000 100644 --- a/src/spicelib/parser/inp2d.c +++ b/src/spicelib/parser/inp2d.c @@ -95,7 +95,8 @@ void INP2D(CKTcircuit *ckt, INPtables * tab, struct card *current) for (i = 0; i < max_i; i++) if (i < numnodes) IFC (bindNode, (ckt, fast, i + 1, node[i])); - else + else if (thismodel->INPmodType != INPtypelook("NUMD") + && (thismodel->INPmodType != INPtypelook("NUMD2"))) GENnode(fast)[i] = -1; PARSECALL((&line, ckt, type, fast, &leadval, &waslead, tab));