diff --git a/src/frontend/numparam/spicenum.c b/src/frontend/numparam/spicenum.c index 7943c1273..f9c3b9ffc 100644 --- a/src/frontend/numparam/spicenum.c +++ b/src/frontend/numparam/spicenum.c @@ -191,10 +191,13 @@ findsubname(dico_t *dico, SPICE_DSTRINGPTR dstr_p) entry = entrynb(dico, spice_dstring_value(&name)); if (entry && (entry->tp == NUPA_SUBCKT)) { spice_dstring_setlength(dstr_p, (int) (p_end - s)); + spice_dstring_free(&name); return; } } } + + spice_dstring_free(&name); } diff --git a/src/frontend/numparam/xpressn.c b/src/frontend/numparam/xpressn.c index 39b61e8a6..655ce9a34 100644 --- a/src/frontend/numparam/xpressn.c +++ b/src/frontend/numparam/xpressn.c @@ -556,6 +556,7 @@ findsubckt(dico_t *dico, const char * const s) pscopy(&ustr, name_b, name_e); entry = entrynb(dico, spice_dstring_value(&ustr)); + spice_dstring_free(&ustr); if (entry && (entry->tp == NUPA_SUBCKT)) { return entry->ivl;