diff --git a/pallets/universal-dividend/src/lib.rs b/pallets/universal-dividend/src/lib.rs index 537191b89391663948f235224d5f3a4c7a2bb82a..f277c17460313171f8c54d16828a149fb56d3bcc 100644 --- a/pallets/universal-dividend/src/lib.rs +++ b/pallets/universal-dividend/src/lib.rs @@ -314,7 +314,15 @@ pub mod pallet { ), ); - <CurrentUd<T>>::put(new_ud_amount); + CurrentUd::<T>::put(new_ud_amount); + PastReevals::<T>::mutate(|past_reevals| { + if past_reevals.len() == T::MaxPastReeval::get() as usize { + past_reevals.remove(0); + } + past_reevals + .try_push((CurrentUdIndex::<T>::get(), new_ud_amount)) + .expect("Unreachable, because we removed an element just before.") + }); Self::deposit_event(Event::UdReevalued { new_ud_amount,