The balances
mapping is not updated when a lock is unlocked.
There is a mapping: mapping(address => uint256) internal balances;
which keeps track of total number of locks of an address/user. When _storeNewLock()
is called in SDLPoolPrimary contract the balances
mapping is updated i.e increased by 1, but when a lock is unlocked the mapping is not updated i.e is decreased by 1. So the lock presents even after unlocking the lock.
Run this test:
Outdated state in contract.
Manual analysis
Add this balances[msg.sender] -= 1
in initiateUnlock()
.
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.