diff --git a/supervisor.c b/supervisor.c index 7c94757..d20bef6 100644 --- a/supervisor.c +++ b/supervisor.c @@ -40,6 +40,10 @@ void initCircBuf() void getSolution(sem_t sUsedSpace, sem_t sFreeSpace, int *solution) { + for (int i = 0; i < MAX_ITEMS; i++) { + solution[i] = -1; + } + if (shared->head == -1) { sem_wait(&sUsedSpace); shared->head = (shared->head + 1) % MAX_ITEMS; @@ -129,7 +133,7 @@ int main(int argc, char *argv[]) initCircBuf(); while (quit == 0) { - int solution[MAX_ITEMS] = {-1}; + int solution[MAX_ITEMS]; getSolution(*sUsedSpace, *sFreeSpace, solution); }