Slot mismatch due to incorrect use of (tload(1)
, tstore(0, 1)
).
The original code has a slot mismatch (tload(1)
, tstore(0, 1)
) which is incorrect, and use different slot.
This means the check doesn't properly detect reentrancy, same slot must be used for checking and storing.
The check (tload(1)
) is always false
initially (since slot 1
is never set).
The lock (tstore(0,1)
) is stored in the wrong place (slot 0
), so it doesn’t actually prevent reentrancy.
Doesn't prevent reentrancy
Manual review
Fixed code:
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.