From f136cc8437d2a2f02c989bf1e5fad9e0e1a0b50a Mon Sep 17 00:00:00 2001 From: EDUARDO MELO DE SIQUEIRA Date: Fri, 12 Jul 2024 17:20:58 -0300 Subject: [PATCH] fix: logic structure of legacy and new ERC7589 --- contracts/OriumSftMarketplace.sol | 12 ++++++------ contracts/libraries/LibOriumSftMarketplace.sol | 5 ++--- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/contracts/OriumSftMarketplace.sol b/contracts/OriumSftMarketplace.sol index 434e4d2..41fb470 100644 --- a/contracts/OriumSftMarketplace.sol +++ b/contracts/OriumSftMarketplace.sol @@ -217,16 +217,16 @@ contract OriumSftMarketplace is Initializable, OwnableUpgradeable, PausableUpgra */ function delistRentalOfferAndWithdraw(RentalOffer calldata _offer) external whenNotPaused { _delistRentalOffer(_offer); - IERC7589 _rolesRegistry = IERC7589( - IOriumMarketplaceRoyalties(oriumMarketplaceRoyalties).sftRolesRegistryOf(_offer.tokenAddress) - ); - IERC7589Legacy _rolesRegistryLegacy = IERC7589Legacy( - IOriumMarketplaceRoyalties(oriumMarketplaceRoyalties).sftRolesRegistryOf(_offer.tokenAddress) - ); if (_offer.tokenAddress == aavegotchiWearableAddress) { + IERC7589Legacy _rolesRegistryLegacy = IERC7589Legacy( + IOriumMarketplaceRoyalties(oriumMarketplaceRoyalties).sftRolesRegistryOf(_offer.tokenAddress) + ); _rolesRegistryLegacy.releaseTokens(_offer.commitmentId); } else { + IERC7589 _rolesRegistry = IERC7589( + IOriumMarketplaceRoyalties(oriumMarketplaceRoyalties).sftRolesRegistryOf(_offer.tokenAddress) + ); _rolesRegistry.unlockTokens(_offer.commitmentId); } } diff --git a/contracts/libraries/LibOriumSftMarketplace.sol b/contracts/libraries/LibOriumSftMarketplace.sol index 4a171fe..7ec04e5 100644 --- a/contracts/libraries/LibOriumSftMarketplace.sol +++ b/contracts/libraries/LibOriumSftMarketplace.sol @@ -100,10 +100,8 @@ library LibOriumSftMarketplace { address _expectedGrantor, address _rolesRegistryAddress ) external view { - IERC7589 _rolesRegistry = IERC7589(_rolesRegistryAddress); - IERC7589Legacy _rolesRegistryLegacy = IERC7589Legacy(_rolesRegistryAddress); - if (_tokenAddress == aavegotchiWearableAddress) { + IERC7589Legacy _rolesRegistryLegacy = IERC7589Legacy(_rolesRegistryAddress); require( _rolesRegistryLegacy.grantorOf(_commitmentId) == _expectedGrantor, 'OriumSftMarketplace: expected grantor does not match the grantor of the commitmentId' @@ -117,6 +115,7 @@ library LibOriumSftMarketplace { "OriumSftMarketplace: tokenId provided does not match commitment's tokenId" ); } else { + IERC7589 _rolesRegistry = IERC7589(_rolesRegistryAddress); require( _rolesRegistry.tokenAmountOf(_commitmentId) == _tokenAmount, "OriumSftMarketplace: tokenAmount provided does not match commitment's tokenAmount"