diff --git a/crates/bevy_ecs/src/system/exclusive_function_system.rs b/crates/bevy_ecs/src/system/exclusive_function_system.rs index 1d5c7fca36781..c224dd2e46c15 100644 --- a/crates/bevy_ecs/src/system/exclusive_function_system.rs +++ b/crates/bevy_ecs/src/system/exclusive_function_system.rs @@ -132,9 +132,10 @@ where } #[inline] - fn apply_buffers(&mut self, world: &mut World) { - let param_state = self.param_state.as_mut().expect(PARAM_MESSAGE); - Param::apply(param_state, world); + fn apply_buffers(&mut self, _world: &mut World) { + // "pure" exclusive systems do not have any buffers to apply. + // Systems made by piping a normal system with an exclusive system + // might have buffers to apply, but this is handled by `PipeSystem`. } #[inline] diff --git a/crates/bevy_ecs/src/system/exclusive_system_param.rs b/crates/bevy_ecs/src/system/exclusive_system_param.rs index 7f5b25f77fba3..4d77049e317e2 100644 --- a/crates/bevy_ecs/src/system/exclusive_system_param.rs +++ b/crates/bevy_ecs/src/system/exclusive_system_param.rs @@ -12,8 +12,6 @@ pub trait ExclusiveSystemParam: Sized { type Item<'s>: ExclusiveSystemParam; fn init(world: &mut World, system_meta: &mut SystemMeta) -> Self::State; - #[inline] - fn apply(_state: &mut Self::State, _world: &mut World) {} fn get_param<'s>(state: &'s mut Self::State, system_meta: &SystemMeta) -> Self::Item<'s>; } @@ -74,12 +72,6 @@ macro_rules! impl_exclusive_system_param_tuple { (($($param::init(_world, _system_meta),)*)) } - #[inline] - fn apply(state: &mut Self::State, _world: &mut World) { - let ($($param,)*) = state; - $($param::apply($param, _world);)* - } - #[inline] #[allow(clippy::unused_unit)] fn get_param<'s>(