aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorshoebe <smarleau.2019@gmail.com>2022-06-05 15:48:52 -0400
committershoebe <smarleau.2019@gmail.com>2022-06-05 15:48:52 -0400
commit2a83a44fd9780fc1aa9bd5a2adff559ee30ab95d (patch)
tree4be1fee119fc6c37e20d514efd548a980242eb0b
parentb00324756dd923afcc6e0dbf401ffa361debd470 (diff)
downloadrapier-2a83a44fd9780fc1aa9bd5a2adff559ee30ab95d.tar.gz
rapier-2a83a44fd9780fc1aa9bd5a2adff559ee30ab95d.tar.bz2
rapier-2a83a44fd9780fc1aa9bd5a2adff559ee30ab95d.zip
Fix panic when a collider is both added and removed before a call to CollisionPipeline::step
-rw-r--r--src/pipeline/collision_pipeline.rs4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/pipeline/collision_pipeline.rs b/src/pipeline/collision_pipeline.rs
index 43e9e7f..a27e5a8 100644
--- a/src/pipeline/collision_pipeline.rs
+++ b/src/pipeline/collision_pipeline.rs
@@ -94,7 +94,9 @@ impl CollisionPipeline {
modified_colliders: &mut Vec<ColliderHandle>,
) {
for handle in modified_colliders.drain(..) {
- colliders.index_mut_internal(handle).changes = ColliderChanges::empty();
+ if let Some(co) = colliders.get_mut_internal(handle) {
+ co.changes = ColliderChanges::empty();
+ }
}
}