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