Prevent memory leak.
Remove use controls. Safeguard against NULL.
This commit is contained in:
parent
79fcb5d4bd
commit
d2fb3fb16b
|
|
@ -1122,7 +1122,8 @@ inp_spsource(FILE *fp, bool comfile, char *filename, bool intfile)
|
||||||
inputdir = dir_name;
|
inputdir = dir_name;
|
||||||
#endif
|
#endif
|
||||||
if (cp_getvar("controlswait", CP_BOOL, NULL, 0)) {
|
if (cp_getvar("controlswait", CP_BOOL, NULL, 0)) {
|
||||||
exec_controls(wl_copy(wl));
|
if (wl)
|
||||||
|
exec_controls(wl_copy(wl));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
|
||||||
|
|
@ -485,6 +485,7 @@ _cthread_run(void *controls)
|
||||||
#ifdef HAVE_LIBPTHREAD
|
#ifdef HAVE_LIBPTHREAD
|
||||||
cont_condition = FALSE;
|
cont_condition = FALSE;
|
||||||
#endif
|
#endif
|
||||||
|
wl_free(controls);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -608,6 +609,7 @@ exec_controls(wordlist *newcontrols)
|
||||||
wordlist *wl;
|
wordlist *wl;
|
||||||
for (wl = shcontrols; wl; wl = wl->wl_next)
|
for (wl = shcontrols; wl; wl = wl->wl_next)
|
||||||
cp_evloop(wl->wl_word);
|
cp_evloop(wl->wl_word);
|
||||||
|
wl_free(shcontrols);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue