fix garbage collection of vectors returned by ft_evaluate()
This commit is contained in:
parent
9652cc46c8
commit
059f2b6c0d
|
|
@ -108,7 +108,7 @@ com_let(wordlist *wl)
|
|||
indices[numdims++] = j;
|
||||
|
||||
/* va: garbage collection for t, if pnode `names' is no simple value */
|
||||
if (names != NULL && names->pn_value == NULL && t != NULL)
|
||||
if (names && !names->pn_value && t)
|
||||
vec_free(t);
|
||||
free_pnode(names); /* frees also t, if pnode `names' is simple value */
|
||||
|
||||
|
|
@ -235,7 +235,7 @@ com_let(wordlist *wl)
|
|||
|
||||
quit:
|
||||
/* va: garbage collection for t, if pnode `names' is no simple value */
|
||||
if (names != NULL && names->pn_value == NULL && t != NULL)
|
||||
if (names && !names->pn_value && t)
|
||||
vec_free(t);
|
||||
free_pnode(names); /* frees also t, if pnode `names' is simple value */
|
||||
tfree(p);
|
||||
|
|
|
|||
|
|
@ -317,7 +317,7 @@ cp_istrue(wordlist *wl)
|
|||
rv = !vec_iszero(v);
|
||||
|
||||
/* va: garbage collection for v, if pnode names is no simple value */
|
||||
if (names->pn_value == NULL && v != NULL)
|
||||
if (names && !names->pn_value && v)
|
||||
vec_free(v);
|
||||
free_pnode(names); /* free also v, if pnode names is simple value */
|
||||
|
||||
|
|
|
|||
|
|
@ -1350,11 +1350,10 @@ com_alter_common(wordlist *wl, int do_model)
|
|||
|
||||
if_setparam(ft_curckt->ci_ckt, &dev, param, dv, do_model);
|
||||
|
||||
/* va: garbage collection for dv, if pnode names is no simple value */
|
||||
if (names->pn_value == NULL && dv != NULL)
|
||||
vec_free(dv);
|
||||
|
||||
done:
|
||||
/* va: garbage collection for dv, if pnode names is no simple value */
|
||||
if (names && !names->pn_value && dv)
|
||||
vec_free(dv);
|
||||
free_pnode(names); /* free also dv, if pnode names is simple value */
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue