The current implementation of the nonReentrant modifier does not properly prevent reentrancy by setting the locked state variable at the right place in the modifier.
The locked state variable is only set to false at the end of the modifier, which can potentially allow reentrancy during the execution of the function.
It is important to set locked = true at the start of the modifier to prevent reentrancy attacks from triggering during the function execution.
A reentrancy attack could happen.
Manual code review.
Update the nonReentrant modifier to ensure that locked is set to true at the start of the function. This prevents reentrancy attacks more effectively. The corrected modifier should look as follows:
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.