Submitted by hansfriese
https://github.com/code-423n4/2023-02-malt/blob/main/contracts/RewardSystem/LinearDistributor.sol#L114 
https://github.com/code-423n4/2023-02-malt/blob/main/contracts/RewardSystem/LinearDistributor.sol#L227
LinearDistributor.declareReward() might revert after changing vestingDistributor due to uint underflow.
In LinearDistributor.sol, there is a setVestingDistributor() function to update vestingDistributor.
And in declareReward(), it calculates the netVest and netTime by subtracting the previous amount and time.
But there is no guarantee that the vested amount of the new vestingDistributor is greater than the previously saved amount after changing the distributor.
Furthermore, there is no option to change previouslyVested beside this declareReward() function and it will keep reverting unless the admin change back the distributor.
I think it would resolve the above problem if we change the previous amounts as well while updating the distributor.
0xScotch (Malt) confirmed and commented:
