简介:
主要功能是从FileDescriptor读取,直到找到EOF或换行符。我的缓冲区大小由用户定义,您可以使用多个FileDescriptor,因为我的链表是静态的
我的问题:
根据缓冲区的大小(偶数与否),我会在第二次通话后(如果我不自由,它完全正常,但我不会有内存泄漏):
正在释放的指针未分配
***在malloc_error_break中设置断点以进行调试
我唯一免费的是我的建筑功能:
int gnl_build(int fd, char *buf, int ret, gnl_lst **head)
{
gnl_lst *elem;
char *str;
elem = *head;
while (elem && elem->fd != fd)
elem = elem->next;
if (elem == NULL)
{
//building new element
elem = (gnl_lst *)lstnew(buf, (size_t)(ret + 1));
elem->fd = fd;
lstaddback((t_list **)head, (t_list *)elem);
}
else
{
//create new memory space and copies both strings in the new space
str = strjoin(elem->content, buf);
free((*elem).content);
elem->content = str;
elem->content_size = strlen(str) + 1;
}
if (strstr(elem->content, "\n") != NULL)
return (1);
return (0);
}
欢迎任何帮助!感谢。