The emergencyResume()
function adds liquidity back into the pool during resume from pause. However, it does not check if liquidity was already added by a previous call.
If emergencyResume()
ever reverts or fails after inserting liquidity, calling it again would add a duplicate entry without detection. This could lock up tokens long-term in the pool or introduce surplus.
Reproduction Steps:
Call emergencyResume()
to add initial liquidity
Mimic a failure that reverts the transaction
Call emergencyResume()
a second time
Detect duplicate liquidity insertion
Funds may become permanently stuck in pool
Manual Review
Add checks that no liquidity exists already before insertion. For example, verify zero liquidity token balances owned by contract. Revert on any duplicates to avoid risk of locked or excess funds.
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.