diff --git a/src/spicelib/devices/bsim4v5/b4v5mpar.c b/src/spicelib/devices/bsim4v5/b4v5mpar.c index 0ebc1e962..47542ecbd 100644 --- a/src/spicelib/devices/bsim4v5/b4v5mpar.c +++ b/src/spicelib/devices/bsim4v5/b4v5mpar.c @@ -103,6 +103,8 @@ GENmodel *inMod) break; case BSIM4v5_MOD_VERSION : + if (mod->BSIM4v5version) + free(mod->BSIM4v5version); mod->BSIM4v5version = value->sValue; mod->BSIM4v5versionGiven = TRUE; break; diff --git a/src/spicelib/devices/vsrc/vsrcask.c b/src/spicelib/devices/vsrc/vsrcask.c index 54aa946cc..0ef72402d 100644 --- a/src/spicelib/devices/vsrc/vsrcask.c +++ b/src/spicelib/devices/vsrc/vsrcask.c @@ -87,6 +87,7 @@ VSRCask(CKTcircuit *ckt, GENinstance *inst, int which, IFvalue *value, IFvalue * return (OK); case VSRC_CURRENT: if (ckt->CKTcurrentAnalysis & DOING_AC) { + FREE(errMsg); errMsg = TMALLOC(char, strlen(msg) + 1); errRtn = "VSRCask"; strcpy(errMsg,msg); @@ -100,6 +101,7 @@ VSRCask(CKTcircuit *ckt, GENinstance *inst, int which, IFvalue *value, IFvalue * return(OK); case VSRC_POWER: if (ckt->CKTcurrentAnalysis & DOING_AC) { + FREE(errMsg); errMsg = TMALLOC(char, strlen(msg) + 1); errRtn = "VSRCask"; strcpy(errMsg,msg);