From f121c433a7657a9476ff473eec141f279ef9d930 Mon Sep 17 00:00:00 2001 From: Holger Vogt Date: Mon, 20 Mar 2023 21:32:24 +0100 Subject: [PATCH] Check for buggy diode instance line, avoid crash --- src/frontend/inpcom.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/frontend/inpcom.c b/src/frontend/inpcom.c index 1767b1c4a..9c6d67a07 100644 --- a/src/frontend/inpcom.c +++ b/src/frontend/inpcom.c @@ -9769,8 +9769,14 @@ static struct card *ltspice_compat(struct card *oldcard) /* check for the model name */ int i; char *stoks[4]; - for (i = 0; i < 4; i++) + for (i = 0; i < 4; i++) { stoks[i] = gettok_node(&cut_line); + if (stoks[i] == NULL) { + fprintf(stderr, "Error in line %d: buggy diode instance line\n %s\n", card->linenum_orig, card->line); + fprintf(stderr, "At least 'Dxx n1 n2 d' is required.\n"); + controlled_exit(EXIT_BAD); + } + } /* rewrite d line and replace it if a model is found */ if ((nesting > 0) && find_a_model(modelsfound, stoks[3], subcktline->line)) {