From 37ccfe0790fb2100b4bf1d51affef8bca0ae518d Mon Sep 17 00:00:00 2001 From: Dominik Kaiser Date: Sat, 18 Jan 2025 16:41:16 +0100 Subject: [PATCH] Fix bug --- philo/src/simulation.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/philo/src/simulation.c b/philo/src/simulation.c index 6685957..943d38c 100644 --- a/philo/src/simulation.c +++ b/philo/src/simulation.c @@ -6,7 +6,7 @@ /* By: dkaiser data->forks[philo->id]; - right_fork = &philo->data->forks[(philo->id + 1) % philo->data->nbr_of_philos]; + left_fork = &philo->data->forks[philo->id - 1]; + right_fork = &philo->data->forks[philo->id % philo->data->nbr_of_philos]; ttd = philo->data->time_to_die; while (!left_fork->available || !right_fork->available) { @@ -42,6 +42,7 @@ void philo_eat(t_philo *philo) pthread_mutex_lock(&right_fork->mutex); if (philo->data->simulation_running) { + left_fork->available = 0; ft_log(philo->id, "has taken a fork"); right_fork->available = 0; -- 2.47.2