If user hasn't delegated their votes before, TempleGoldStaking::stakeFor
and TempleGoldStaking::_withdrawFor
pass an undefined delegate value delegates[_for]
to the TempleGoldStaking::_moveDelegates
. As a result, the delegate value is address(0)
unless it has been previously set with TempleGoldStaking::delegate
, which may lead to incorrect delegation of votes or missing delegation functionality.
Let's take TempleGoldStaking::stakeFor
as an example (same applies for TempleGoldStaking::_withdrawFor
):
However, delegates[_for]
might've not been set prior to this function call, so it defaults to address(0)
. This results in TempleGoldStaking::_moveDelegates
not correctly moving the delegation, potentially causing voting power issues.
Voting power may not be accurately transferred or assigned.
Manual code review
Ensure that delegates[_for]
is properly set before calling _moveDelegates
, if it hasn't been set before.
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.