clean up still in progress

eliminated most of the leaks of the parser
norming still need to be done
This commit is contained in:
Tanguy MAZE
2019-04-11 11:40:26 +02:00
parent 8c4a6aac25
commit 86b0530bf7
6 changed files with 82 additions and 130 deletions

View File

@@ -6,7 +6,7 @@
/* By: tmaze <tmaze@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2019/04/06 11:37:56 by tmaze #+# #+# */
/* Updated: 2019/04/10 14:53:01 by tmaze ### ########.fr */
/* Updated: 2019/04/11 09:14:45 by tmaze ### ########.fr */
/* */
/* ************************************************************************** */
@@ -62,19 +62,24 @@ static void print_ants(t_lmdata *data, t_ants **ants, char *has_start
clean_ants(ants);
}
void push_ants(t_lmdata *data, t_ind **paths, int nb_paths)
static void init_ants(t_ants **ants, int *ant_c, char *has_start, int nb_paths)
{
*ants = NULL;
ft_bzero(has_start, nb_paths);
*ant_c = 2;
has_start[0] = 1;
}
int push_ants(t_lmdata *data, t_ind **paths, int nb_paths)
{
t_ants *ants;
int i;
int ant_c;
char has_start[nb_paths];
ants = NULL;
ft_bzero(has_start, nb_paths);
init_ants(&ants, &ant_c, has_start, nb_paths);
if (add_ant(&ants, 1, 0, paths) == NULL)
return ;
ant_c = 2;
has_start[0] = 1;
return (0);
while ((ants || ant_c <= data->nbants) && (i = -1))
{
while (++i < nb_paths)
@@ -83,10 +88,11 @@ void push_ants(t_lmdata *data, t_ind **paths, int nb_paths)
if (!add_ant(&ants, ant_c, i, paths))
del_ants(&ants);
if (!ants)
return ;
return (0);
ant_c++;
has_start[i] = 1;
}
print_ants(data, &ants, has_start, paths);
}
return (1);
}