diff --git a/data.c b/data.c index a19b58a..8769c3a 100644 --- a/data.c +++ b/data.c @@ -11,6 +11,7 @@ bool data_init(t_data *data) { + data->stop = 0; data->forks = malloc(sizeof(bool) * data->nb_philos); if (data->forks == NULL) return (1); @@ -31,7 +32,6 @@ bool data_init(t_data *data) pthread_mutex_init(&data->forks_mutex, NULL); pthread_mutex_init(&data->stop_mutex, NULL); pthread_mutex_init(&data->print_mutex, NULL); - data->stop = 0; return (0); } diff --git a/philo.c b/philo.c index 7eb13a2..6311040 100644 --- a/philo.c +++ b/philo.c @@ -146,7 +146,9 @@ t_philo *philo_init(t_data *data) philo->id = id++; philo->data = data; philo->nb_meal = 0; + philo->stop = 0; philo->last_eat = get_time(); + philo->last_sleep = get_time(); pthread_mutex_init(&philo->nb_meal_mutex, NULL); pthread_mutex_init(&philo->last_eat_mutex, NULL); pthread_mutex_init(&philo->last_sleep_mutex, NULL);