Browse Source

Fix memory leak in xspice oneshot.

pre-master-46
Brian Taylor 10 months ago
committed by Holger Vogt
parent
commit
416edbbb9a
  1. 10
      src/xspice/icm/analog/oneshot/cfunc.mod

10
src/xspice/icm/analog/oneshot/cfunc.mod

@ -92,10 +92,12 @@ oneshot_callback(ARGS, Mif_Callback_Reason_t reason)
switch (reason) {
case MIF_CB_DESTROY: {
Local_Data_t *loc = STATIC_VAR (locdata);
if (loc) {
if (loc) {
if (loc->control) free(loc->control);
if (loc->pw) free(loc->pw);
free(loc);
STATIC_VAR (locdata) = NULL;
}
STATIC_VAR (locdata) = loc = NULL;
}
break;
}
}
@ -268,7 +270,7 @@ void cm_oneshot(ARGS) /* structure holding parms,
/*** allocate static storage for *loc ***/
STATIC_VAR (locdata) = calloc (1 , sizeof ( Local_Data_t ));
loc = STATIC_VAR (locdata);
CALLBACK = oneshot_callback;
CALLBACK = oneshot_callback;
/* Allocate storage for breakpoint domain & pulse width values */
x = loc->control = (double *) calloc((size_t) cntl_size, sizeof(double));

Loading…
Cancel
Save