An NFT transfer and short record update are not atomic.
When transferring an NFT short position in LibShortRecord.transferNFT
, the short record is updated before the NFT transfer.
This creates a race condition where a reentrancy call could split them.
Short record and NFT ownership could become out of sync.
Manual
Use a mutex lock to ensure atomicity:
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.