Browse Source

reduce memory leaks

h_vogt 14 years ago
parent
commit
829fbafb85
  1. 4
      ChangeLog
  2. 18
      src/spicelib/analysis/cktdest.c

4
ChangeLog

@ -1,3 +1,7 @@
2011-12-28 Holger Vogt
* cktdest.c: reduce memory leaks for command 'reset'
bug no. 3229770
2011-12-27 Robert Larice 2011-12-27 Robert Larice
* visualc/vngspice.vcproj , * visualc/vngspice.vcproj ,
* visualc/include/config.h , * visualc/include/config.h ,

18
src/spicelib/analysis/cktdest.c

@ -43,13 +43,27 @@ CKTdestroy(CKTcircuit *ckt)
for(i=0;i<=ckt->CKTmaxOrder+1;i++){ for(i=0;i<=ckt->CKTmaxOrder+1;i++){
FREE(ckt->CKTstates[i]); FREE(ckt->CKTstates[i]);
} }
if(ckt->CKTmatrix) SMPdestroy(ckt->CKTmatrix);
if(ckt->CKTbreaks) FREE(ckt->CKTbreaks);
if(ckt->CKTmatrix) {
SMPdestroy(ckt->CKTmatrix);
ckt->CKTmatrix = NULL;
}
FREE(ckt->CKTbreaks);
for(node = ckt->CKTnodes; node; ) { for(node = ckt->CKTnodes; node; ) {
nnode = node->next; nnode = node->next;
FREE(node); FREE(node);
node = nnode; node = nnode;
} }
FREE(ckt->CKTrhs);
FREE(ckt->CKTrhsOld);
FREE(ckt->CKTrhsSpare);
FREE(ckt->CKTirhs);
FREE(ckt->CKTirhsOld);
FREE(ckt->CKTirhsSpare);
FREE(ckt->CKTstat->STATdevNum);
FREE(ckt->CKTstat);
ckt->CKTnodes = NULL; ckt->CKTnodes = NULL;
ckt->CKTlastNode = NULL; ckt->CKTlastNode = NULL;
FREE(ckt); FREE(ckt);

Loading…
Cancel
Save