KittyConnect::bridgeNftToAnotherChain does not update KittyConnect::s_catInfo storage variable after rearranging elements in KittyConnect::s_ownerToCatsTokenId. As a result, KittyConnect::getCatInfo returns inaccurate data.
While KittyConnect::bridgeNftToAnotherChain takes care of removing the bridged NFT tokenId from KittyConnect::s_ownerToCatsTokenId and replacing it with the last tokenId added to said array (when applicable), it fails to update KittyConnect::s_catInfo (for the moved tokenId) to keep track of the new index position.
As a result, after bridging an NFT, the function KittyConnect::getCatInfo may return inaccurate data.
KittyConnect::getCatInfo may return the wrong idx value for the provided tokenId.
Manual review.
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.