mirror of
https://github.com/sigp/lighthouse.git
synced 2026-03-10 12:11:59 +00:00
Appease arithmetic_side_effects
This commit is contained in:
@@ -34,7 +34,7 @@ pub fn process_inactivity_updates<T: EthSpec>(
|
|||||||
.safe_add_assign(spec.inactivity_score_bias)?;
|
.safe_add_assign(spec.inactivity_score_bias)?;
|
||||||
}
|
}
|
||||||
// Decrease the score of all validators for forgiveness when not during a leak
|
// Decrease the score of all validators for forgiveness when not during a leak
|
||||||
if !state.is_in_inactivity_leak(previous_epoch, spec) {
|
if !state.is_in_inactivity_leak(previous_epoch, spec)? {
|
||||||
let inactivity_score = state.get_inactivity_score_mut(index)?;
|
let inactivity_score = state.get_inactivity_score_mut(index)?;
|
||||||
inactivity_score
|
inactivity_score
|
||||||
.safe_sub_assign(min(spec.inactivity_score_recovery_rate, *inactivity_score))?;
|
.safe_sub_assign(min(spec.inactivity_score_recovery_rate, *inactivity_score))?;
|
||||||
|
|||||||
@@ -77,7 +77,7 @@ pub fn get_flag_index_deltas<T: EthSpec>(
|
|||||||
let mut delta = Delta::default();
|
let mut delta = Delta::default();
|
||||||
|
|
||||||
if unslashed_participating_indices.contains(index)? {
|
if unslashed_participating_indices.contains(index)? {
|
||||||
if !state.is_in_inactivity_leak(previous_epoch, spec) {
|
if !state.is_in_inactivity_leak(previous_epoch, spec)? {
|
||||||
let reward_numerator = base_reward
|
let reward_numerator = base_reward
|
||||||
.safe_mul(weight)?
|
.safe_mul(weight)?
|
||||||
.safe_mul(unslashed_participating_increments)?;
|
.safe_mul(unslashed_participating_increments)?;
|
||||||
|
|||||||
@@ -1734,16 +1734,15 @@ impl<T: EthSpec> BeaconState<T> {
|
|||||||
previous_epoch: Epoch,
|
previous_epoch: Epoch,
|
||||||
val_index: usize,
|
val_index: usize,
|
||||||
) -> Result<bool, Error> {
|
) -> Result<bool, Error> {
|
||||||
self.get_validator(val_index).map(|val| {
|
let val = self.get_validator(val_index)?;
|
||||||
val.is_active_at(previous_epoch)
|
Ok(val.is_active_at(previous_epoch)
|
||||||
|| (val.slashed && previous_epoch + Epoch::new(1) < val.withdrawable_epoch)
|
|| (val.slashed && previous_epoch.safe_add(Epoch::new(1))? < val.withdrawable_epoch))
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Passing `previous_epoch` to this function rather than computing it internally provides
|
/// Passing `previous_epoch` to this function rather than computing it internally provides
|
||||||
/// a tangible speed improvement in state processing.
|
/// a tangible speed improvement in state processing.
|
||||||
pub fn is_in_inactivity_leak(&self, previous_epoch: Epoch, spec: &ChainSpec) -> bool {
|
pub fn is_in_inactivity_leak(&self, previous_epoch: Epoch, spec: &ChainSpec) -> Result<bool, safe_arith::ArithError> {
|
||||||
(previous_epoch - self.finalized_checkpoint().epoch) > spec.min_epochs_to_inactivity_penalty
|
Ok((previous_epoch.safe_sub(self.finalized_checkpoint().epoch)?) > spec.min_epochs_to_inactivity_penalty)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Get the `SyncCommittee` associated with the next slot. Useful because sync committees
|
/// Get the `SyncCommittee` associated with the next slot. Useful because sync committees
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ pub trait TestRandom {
|
|||||||
|
|
||||||
impl<T> TestRandom for PhantomData<T> {
|
impl<T> TestRandom for PhantomData<T> {
|
||||||
fn random_for_test(_rng: &mut impl RngCore) -> Self {
|
fn random_for_test(_rng: &mut impl RngCore) -> Self {
|
||||||
PhantomData::default()
|
PhantomData
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user