FeeCollector contract defines a lastClaimed
storage mapping that maps users and timestamp of the last reward claim.
A dedicated _updateLastClaimTime
internal function is defined but never used:
The problem arises because claimRewards
function doesn't call this function while it should. This means lastClaimeTime
mapping is never updated during claims.
Also, lastClaimTime
is private, used nowhere else and there is no getter for it, which means it is basically useless with the current design.
Omission to call an internal function in the claimRewards
function that updates a storage mapping tracking the last claim time for users.
The impact of this issue is low.
Manual review.
Make sure to call _updateLastClaimTime
in claimRewards
and make lastClaimTime
public.
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.