diff --git a/contracts/staking/contracts/src/fees/MixinExchangeFees.sol b/contracts/staking/contracts/src/fees/MixinExchangeFees.sol index 239145da75..5208d1d0ba 100644 --- a/contracts/staking/contracts/src/fees/MixinExchangeFees.sol +++ b/contracts/staking/contracts/src/fees/MixinExchangeFees.sol @@ -97,7 +97,7 @@ contract MixinExchangeFees is totalWeightedStakeThisEpoch = totalWeightedStakeThisEpoch.safeAdd(pool.weightedStake); // Increase the number of active pools. - numActivePoolsThisEpoch += 1; + numActivePoolsThisEpoch = numActivePoolsThisEpoch.safeAdd(1); // Emit an event so keepers know what pools to pass into // `finalize()`. diff --git a/contracts/staking/contracts/src/staking_pools/MixinStakingPoolRewards.sol b/contracts/staking/contracts/src/staking_pools/MixinStakingPoolRewards.sol index bf0af0b4b8..098273f80e 100644 --- a/contracts/staking/contracts/src/staking_pools/MixinStakingPoolRewards.sol +++ b/contracts/staking/contracts/src/staking_pools/MixinStakingPoolRewards.sol @@ -211,7 +211,7 @@ contract MixinStakingPoolRewards is PPM_DENOMINATOR, totalReward ); - membersReward = totalReward - operatorReward; + membersReward = totalReward.safeSub(operatorReward); } return (operatorReward, membersReward); } diff --git a/contracts/staking/contracts/src/sys/MixinFinalizer.sol b/contracts/staking/contracts/src/sys/MixinFinalizer.sol index f6808d72bf..048eba11e6 100644 --- a/contracts/staking/contracts/src/sys/MixinFinalizer.sol +++ b/contracts/staking/contracts/src/sys/MixinFinalizer.sol @@ -50,7 +50,7 @@ contract MixinFinalizer is if (state.poolsRemaining != 0) { LibRichErrors.rrevert( LibStakingRichErrors.PreviousEpochNotFinalizedError( - closingEpoch - 1, + closingEpoch.safeSub(1), state.poolsRemaining ) );