Optimize ERC721 _isApprovedOrOwner function (#3248)

pull/3225/head
Amirhossein Banavi 3 years ago committed by GitHub
parent f8bfa560e9
commit 62eb4568be
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      contracts/token/ERC721/ERC721.sol

@ -232,7 +232,7 @@ contract ERC721 is Context, ERC165, IERC721, IERC721Metadata {
function _isApprovedOrOwner(address spender, uint256 tokenId) internal view virtual returns (bool) {
require(_exists(tokenId), "ERC721: operator query for nonexistent token");
address owner = ERC721.ownerOf(tokenId);
return (spender == owner || getApproved(tokenId) == spender || isApprovedForAll(owner, spender));
return (spender == owner || isApprovedForAll(owner, spender) || getApproved(tokenId) == spender);
}
/**

Loading…
Cancel
Save