diff --git a/src/schedule.c b/src/schedule.c
index 51d6dabc28e0d531df00b9db2755eae35ca31c3d..f5a2a81a83780beccabe30c046dfdff14cc42dd2 100644
--- a/src/schedule.c
+++ b/src/schedule.c
@@ -82,6 +82,8 @@ struct schedule_t * new_schedule(int num_m) {
 	struct schedule_t* sched = (struct schedule_t*)malloc(sizeof(struct schedule_t));
 	assert(sched);
 	sched->schedule = (struct list_t**)calloc(num_m, sizeof(struct list_t*));	// init à zero automatiquement
+	for (int i = 0; i < num_m; ++i)
+		sched->schedule[i] = new_list(view_schedule_node, delete_schedule_node);
 	sched->num_machines = num_m;
 	return sched;
 }