Can't call approve on a ERC721 contract, metamask stuck

Hello !

I have seemingly metamask related problems when executing one function of one of our contracts.

This is a ERC721 contract, following closely the specification found here : htt***ps://eips.ethereum.org/EIPS/eip-721

I can basically call every function of this contract, but the approve function. Calling the approve function trigger metamask, and then, it get stuck on the loading screen right before allowing us to confirm the transaction.

Our contract is here : htt***ps://github.com/Perpetual-Altruism-Ltd/myNFT-Bridge/blob/master/Codebase/Bridge_Contracts/contracts/manipulator/721/IOU.sol

I tried with remix to rule out our own web3 implementation.
I tried with different browsers (brave, firefox, chrome).
I tried to downgrade metamask version to 10.10.2 and 10.0.0 and it worked fine. But no luck with the 10.13.0 one.

Here what happen when calling approve. Just stuck there.

htt***ps://ibb.co/99h2DPc

It get even weirder, is if i rename the function, let’s say “approveMe”, without changing a thing in it, it go through.

htt***ps://ibb.co/H7wBgYs

Thank’s, waiting for any reply,

Regards,
Alexandre G, MyNFT team.

5 Likes

This issue is likely related to htt***ps://github.com/MetaMask/metamask-extension/issues/14518

3 Likes

Ok Metamask team, found the problem. See last response over there :
h***ttps://github.com/MetaMask/metamask-extension/issues/14518

5 Likes

Will bring it up, thanks for posting the GitHub issue! :slight_smile:

Currently, ERC721 transfers should only be attempted on mobile. Here is more information on our Knowledge Base:

5 Likes

Any luck on this issue? Still cannot approve NFTs for deposit into smart contracts.

2 Likes

Have you tried on mobile?

2 Likes

Not yet, unfortunately our primary use case is a desktop browser flow.

1 Like

@nakedwinnie Do you know if there’s an update on this issue?

There is a workaround, but will need you to redeploy / update your contracts if by chance they support some kind of upgradable proxy (1538, diamonds …).

See htt***ps://github.com/MetaMask/metamask-extension/issues/14518 discussion thread.

3 Likes

yes.its a problem to solve

1 Like

now,its a little dangerous

2 Likes

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.