From 1b7527eb31a58f36a1c6df0a79ea46992537e15e Mon Sep 17 00:00:00 2001 From: Hugo LAMY Date: Sun, 29 Dec 2019 17:57:37 +0100 Subject: [PATCH] debug sucess --- get_next_line.c | 204 ++++++++++++++++++++--------------------- main.c => tests/main.c | 0 2 files changed, 97 insertions(+), 107 deletions(-) rename main.c => tests/main.c (100%) diff --git a/get_next_line.c b/get_next_line.c index ac90627..be44e89 100644 --- a/get_next_line.c +++ b/get_next_line.c @@ -13,32 +13,32 @@ ** ** #include //for printf ** #include //for open -*/ - void ft_putchar(char c){ - write(1, &c, 1); - } - - void ft_putstr(char *s) - { - while (s && *s) - ft_putchar(*s++); - } - - void ft_putnbr(int n) - { - long l; - - l = n; - if (l < 0) - { - ft_putchar('-'); - l *= -1; - } - if (l >= 10) - ft_putnbr(l / 10); - ft_putchar((l % 10) + '0'); - } -/* +** +** void ft_putchar(char c){ +** write(1, &c, 1); +** } +** +** void ft_putstr(char *s) +** { +** while (s && *s) +** ft_putchar(*s++); +** } +** +** void ft_putnbr(int n) +** { +** long l; +** +** l = n; +** if (l < 0) +** { +** ft_putchar('-'); +** l *= -1; +** } +** if (l >= 10) +** ft_putnbr(l / 10); +** ft_putchar((l % 10) + '0'); +** } +** ** int main(int ac, char **av) ** { ** int *fd; @@ -47,19 +47,6 @@ ** int ret; ** char *line; ** -** // if (ac < 2) -** // return (0); -** -** // (void)i;(void)j; -** // line = NULL; -** // fd[0] = open(av[1], O_RDONLY); -** // ret = 1; -** // while (ret) -** // { -** // ret = get_next_line(fd[0], &line); -** // printf("[%i] %s\n", ret, line); -** // } -** ** line = NULL; ** i = 0; ** if (!(fd = (int *)malloc(sizeof(int) * ac))) @@ -68,20 +55,25 @@ ** fd[i - 1] = open(av[i], O_RDONLY); ** i = 0; ** j = 0; +** ret = 1; ** while (j < ac - 1) ** { -** if ((ret = get_next_line(fd[i], &line)) > 0) +** if (ret > 0) ** { -** //printf("[fd%i-%i] %s\n", fd[i], ret, line); -** ft_putstr("[fd");ft_putnbr(fd[i]);ft_putchar('-');ft_putnbr(ret);ft_putstr("]\n"); +** ret = get_next_line(fd[i], &line); +** // soit afficher le contenu de line +** printf("[fd%i-%i] %s\n", fd[i], ret, line); +** // soit afficher en direct les fd ouverts simultanements +** //ft_putstr("[fd");ft_putnbr(fd[i]);ft_putchar('-');ft_putnbr(ret);ft_putstr("]\n"); ** free(line); ** j = 0; ** } ** else ** { -** free(line); -** //printf("[fd%i-%i]*FINI*\n", fd[i], ret); -** ft_putstr("[fd");ft_putnbr(fd[i]);ft_putchar('-');ft_putnbr(ret);ft_putstr("]*FINI*\n"); +** // soit afficher le contenu de line +** printf("[fd%i-%i]*FINI*\n", fd[i], ret); +** // soit afficher en direct les fd ouverts simultanements +** //ft_putstr("[fd");ft_putnbr(fd[i]);ft_putchar('-');ft_putnbr(ret);ft_putstr("]*FINI*\n"); ** j++; ** } ** i++; @@ -89,7 +81,7 @@ ** i = 0; ** } ** free(fd); -** // while (1); +** while (1); ** return (0); ** } */ @@ -99,37 +91,38 @@ int free_lst(t_gnlist **lst, int ret) t_gnlist *tmp; tmp = *lst; - ////////////////////////////////////////////////////////////////////////////////////// - int debug; // - t_gnlist *tmp2; // - if (tmp->next != tmp) // - tmp2 = tmp->next; // - else // - tmp2 = NULL; // - debug = tmp->lfd; // - ////////////////////////////////////////////////////////////////////////////////////// +// ////////////////////////////////////////////////////////////////////////////////////// +// int debug; // +// t_gnlist *tmp2; // +// if (tmp->next != tmp) // +// tmp2 = tmp->next; // +// else // +// tmp2 = NULL; // +// debug = tmp->lfd; // +// ////////////////////////////////////////////////////////////////////////////////////// while ((*lst)->next != tmp) (*lst) = (*lst)->next; (*lst)->next = (*lst)->next->next; free(tmp->str); free(tmp); tmp = NULL; + *lst = tmp; - ////////////////////////////////////////////////////////////////////////////////////// - if (tmp2) // - { // - tmp = tmp2; // - ft_putstr("\nDEL ");debug>9 ? ft_putstr(" "):ft_putstr(" ");ft_putchar('-'); // - while (tmp != *lst) // - { // - ft_putnbr(tmp->lfd); ft_putchar('-'); tmp = tmp->next; // - } // - ft_putnbr(tmp->lfd); ft_putchar('-'); tmp = tmp->next; // - ft_putchar('('); ft_putnbr(tmp->lfd); ft_putstr(")\n"); // - } // - else // - ft_putstr("DEL\n"); // - ////////////////////////////////////////////////////////////////////////////////////// +// ////////////////////////////////////////////////////////////////////////////////////// +// if (tmp2) // +// { // +// tmp = tmp2; // +// ft_putstr("\nDEL ");debug>9 ? ft_putstr(" "):ft_putstr(" ");ft_putchar('-'); // +// while (tmp != *lst) // +// { // +// ft_putnbr(tmp->lfd); ft_putchar('-'); tmp = tmp->next; // +// } // +// ft_putnbr(tmp->lfd); ft_putchar('-'); tmp = tmp->next; // +// ft_putchar('('); ft_putnbr(tmp->lfd); ft_putstr(")\n"); // +// } // +// else // +// ft_putstr("DEL\n"); // +// ////////////////////////////////////////////////////////////////////////////////////// return (ret); } @@ -139,33 +132,31 @@ int multi_fd(int fd, t_gnlist **lst) t_gnlist *tmp; tmp = *lst; - //while (*lst && (*lst)->lfd != fd && (*lst)->next != tmp) - // *lst = (*lst)->next; - - ////////////////////////////////////////////////////////////////////////////////////// - ft_putnbr(fd); ft_putstr("-"); // - int j = 1; // - while (j) // - { // - if (*lst) // - { // - if ((*lst)->lfd != fd) // - { // - if ((*lst)->next != tmp) // - { // - *lst = (*lst)->next; // - } // - else // - j = 0; // - } // - else // - j = 0; // - } // - else // - j = 0; // - } // - ////////////////////////////////////////////////////////////////////////////////////// - + while (*lst && (*lst)->lfd != fd && (*lst)->next != tmp) + *lst = (*lst)->next; +// ////////////////////////////////////////////////////////////////////////////////////// +// ft_putnbr(fd); ft_putstr("-"); // +// int j = 1; // +// while (j) // +// { // +// if (*lst) // +// { // +// if ((*lst)->lfd != fd) // +// { // +// if ((*lst)->next != tmp) // +// { // +// *lst = (*lst)->next; // +// } // +// else // +// j = 0; // +// } // +// else // +// j = 0; // +// } // +// else // +// j = 0; // +// } // +// ////////////////////////////////////////////////////////////////////////////////////// if (!tmp || ((*lst)->next == tmp && (*lst)->lfd != fd)) { if (!(tmp = (t_gnlist*)malloc(sizeof(*tmp)))) @@ -183,15 +174,15 @@ int multi_fd(int fd, t_gnlist **lst) *lst = tmp; } - ////////////////////////////////////////////////////////////////////////////////////// - tmp = *lst; // - ft_putstr("LST ");ft_putnbr(tmp->lfd); ft_putchar('-'); tmp = tmp->next; // - while (tmp != *lst) // - { // - ft_putnbr(tmp->lfd); ft_putchar('-'); tmp = tmp->next; // - } // - ft_putchar('('); ft_putnbr(tmp->lfd); ft_putstr(")\n"); // - ////////////////////////////////////////////////////////////////////////////////////// +// ////////////////////////////////////////////////////////////////////////////////////// +// tmp = *lst; // +// ft_putstr("LST ");ft_putnbr(tmp->lfd); ft_putchar('-'); tmp = tmp->next; // +// while (tmp != *lst) // +// { // +// ft_putnbr(tmp->lfd); ft_putchar('-'); tmp = tmp->next; // +// } // +// ft_putchar('('); ft_putnbr(tmp->lfd); ft_putstr(")\n"); // +// ////////////////////////////////////////////////////////////////////////////////////// return (1); } @@ -220,6 +211,5 @@ int get_next_line(const int fd, char **line) return (free_lst(&lst, -1)); if (str != NULL) return(ft_memmove(lst->str, str + 1, ft_strlen(str + 1) + 1) != NULL); -// return (0); return (free_lst(&lst, 0)); } diff --git a/main.c b/tests/main.c similarity index 100% rename from main.c rename to tests/main.c