diff options
| author | Dominik Kaiser | 2025-01-18 16:41:16 +0100 |
|---|---|---|
| committer | Dominik Kaiser | 2025-01-18 16:41:16 +0100 |
| commit | 37ccfe0790fb2100b4bf1d51affef8bca0ae518d (patch) | |
| tree | 620d201f6f83725ae7f2e3006d101bc34c837bde /philo | |
| parent | fcbd39d9b3d4662ab58104f868d3d512847eae14 (diff) | |
| download | Philosophers-37ccfe0790fb2100b4bf1d51affef8bca0ae518d.tar.gz Philosophers-37ccfe0790fb2100b4bf1d51affef8bca0ae518d.zip | |
Fix bug
Diffstat (limited to 'philo')
| -rw-r--r-- | philo/src/simulation.c | 7 |
1 files 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 <dkaiser@student.42heilbronn.de +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/01/17 14:38:04 by dkaiser #+# #+# */ -/* Updated: 2025/01/18 13:59:17 by dkaiser ### ########.fr */ +/* Updated: 2025/01/18 16:37:14 by dkaiser ### ########.fr */ /* */ /* ************************************************************************** */ @@ -27,8 +27,8 @@ void philo_eat(t_philo *philo) int tte; int ttd; - left_fork = &philo->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; |
