I have a very simple contract.
contract MyContract {
address _owner;
modifier owner() {
require(msg.sender == _owner);
_;
}
constructor(address manager) {
_owner = manager;
}
function adminApprove(address token, uint256 amount, address spender) external owner
{
IERC20(token).approve(spender, amount);
}
}
Function adminApprove
works fine for USDT and USDC on POLYGON network and works fine for USDC on ETHEREUM network, but not works for USDT on ETHEREUM network.
Error encountered during contract execution [execution reverted]
Even if I try to set amount to zero.
Help me please.
SafeERC20.forceApprove