Skip to content

Commit

Permalink
Fix archetypes_generation being incorrectly updated for systems (#294) (
Browse files Browse the repository at this point in the history
  • Loading branch information
BoxyUwU authored Aug 30, 2020
1 parent 8101622 commit 3efbaca
Showing 1 changed file with 6 additions and 1 deletion.
7 changes: 6 additions & 1 deletion crates/bevy_ecs/src/schedule/parallel_executor.rs
Original file line number Diff line number Diff line change
Expand Up @@ -282,6 +282,7 @@ impl ExecutorStage {
systems: &[Arc<Mutex<Box<dyn System>>>],
schedule_changed: bool,
) {
let start_archetypes_generation = world.archetypes_generation();
let compute_pool = resources
.get_cloned::<bevy_tasks::ComputeTaskPool>()
.unwrap();
Expand Down Expand Up @@ -388,7 +389,11 @@ impl ExecutorStage {
}
}

self.last_archetypes_generation = world.archetypes_generation();
// If world's archetypes_generation is the same as it was before running any systems then
// we can assume that all systems have correct archetype accesses.
if start_archetypes_generation == world.archetypes_generation() {
self.last_archetypes_generation = world.archetypes_generation();
}
}
}

Expand Down

1 comment on commit 3efbaca

@ashneverdawn
Copy link
Contributor

@ashneverdawn ashneverdawn commented on 3efbaca Aug 30, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

From this commit, some nested queries now cause ecs to crash.
See: #398

Please sign in to comment.