for (i = 1; l && i < start; i++)
l = l->next;
if (l == 0)
- return ((char *)NULL);
+ {
+ dispose_words (save);
+ return ((char *)NULL);
+ }
for (j = 0,h = t = l; l && j < nelem; j++)
{
t = l;
return (savestring (""));
result = NULL;
- list = NULL;
+ l = list = NULL;
/* This might be better implemented directly, but it's simple to implement
by converting to a word list first, possibly quoting the data, then
using list_string */
l = REVERSE_LIST(list, WORD_LIST *);
result = l ? string_list_internal (l, sep) : savestring ("");
+ dispose_words (l);
+
return result;
}