@@ -5,7 +5,7 @@ import "./feature/Ownable.sol";
55import "./feature/ExecutionContext.sol " ;
66import "./feature/ContractMetadata.sol " ;
77
8- contract ThirdwebContract is ExecutionContext , Ownable , ContractMetadata {
8+ contract ThirdwebContract is Ownable , ContractMetadata {
99 struct ThirdwebInfo {
1010 string publishMetadataUri;
1111 string contractURI;
@@ -22,20 +22,21 @@ contract ThirdwebContract is ExecutionContext, Ownable, ContractMetadata {
2222
2323 /// @dev Initializes the publish metadata and contract metadata at deploy time.
2424 function setThirdwebInfo (ThirdwebInfo memory _thirdwebInfo ) external {
25- require (bytes (publishMetadataUri).length == 0 , "Already initialized " );
25+ require (bytes (publishMetadataUri).length == 0 , "Published metadata already initialized " );
26+ require (owner == address (0 ), "Owner already initialized " );
2627
2728 publishMetadataUri = _thirdwebInfo.publishMetadataUri;
2829 contractURI = _thirdwebInfo.contractURI;
2930 owner = _thirdwebInfo.owner;
3031 }
3132
32- /// @dev Returns whether owner can be set in the given execution context.
33+ /// @dev Returns whether owner can be set
3334 function _canSetOwner () internal virtual override returns (bool ) {
34- return _msgSender () == owner;
35+ return msg . sender == owner;
3536 }
3637
37- /// @dev Returns whether contract metadata can be set in the given execution context.
38+ /// @dev Returns whether contract metadata can be set
3839 function _canSetContractURI () internal virtual override returns (bool ) {
39- return _msgSender () == owner;
40+ return msg . sender == owner;
4041 }
4142}
0 commit comments