От: | dik o-braz | ||
Дата: | 06.02.04 08:14 | ||
Оценка: |
void x_string_list_add(xStringList *lst, int count, ...)
{
/* ... */
if (lst->al > lst->size)
{
int i;
va_list par;
lst->list[lst->size] = (char **)x_malloc(sizeof(char *) * count);
va_start(par, count);
for (i = 0; i < count; i++)
{
lst->list[lst->size][i] = x_strdup(va_arg(par, char *));
}
/* Зачем нужна вот эта строчка ? VVV */
lst->list[lst->size++][i] = NULL;
/* Возможно, ей затирается служебная инф-я хипа */
/* И в ф-ии free все падает */
va_end(par);
}
/* ... */
}