Double amount accounting in power calculation in increase()
function leads to inflated power calculation and excessive veTokens
minting.
Users can increase their lock by some amount in order to increase their voting power and receive more veRAAC
tokens:
The issue is _lockState.locks[msg.sender]
state variable was already updated in _lockState.increaseLock(msg.sender, amount)
call:
But function calculateAndUpdatePower
assumes that userLock
wasn't updated and adds additional amount again:
Additional voting power and tokens minted will be twice bigger than should.
Double amount accounting in power calculation in increase()
function leads to inflated power calculation and excessive veTokens
minting.
Manual review.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.