You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Sep 15, 2020. It is now read-only.
I have successfully tested txManager against several tokens, including DAI, BAT, ENJ, etc., but have found that the OMG token does not work. From my initial tests, it appears that OMG token transfers do not transfer into the txManager contract, resulting in reverted transactions.
In discussion with another developer, it appears that OMG transfer function does not return a success/failure bool:
OMG: https://etherscan.io/address/0xd26114cd6EE289AccF82350c8d8487fedB8A0C07#code contract ERC20 is ERC20Basic { function allowance(address owner, address spender) constant returns (uint); function transferFrom(address from, address to, uint value); function approve(address spender, uint value); event Approval(address indexed owner, address indexed spender, uint value); }
Versus other tokens:
DAI: https://etherscan.io/address/0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359#code contract ERC20 is ERC20Events { function totalSupply() public view returns (uint); function balanceOf(address guy) public view returns (uint); function allowance(address src, address guy) public view returns (uint); function approve(address guy, uint wad) public returns (bool); function transfer(address dst, uint wad) public returns (bool); function transferFrom(address src, address dst, uint wad) public returns (bool); }
I have successfully tested txManager against several tokens, including DAI, BAT, ENJ, etc., but have found that the OMG token does not work. From my initial tests, it appears that OMG token transfers do not transfer into the txManager contract, resulting in reverted transactions.
In discussion with another developer, it appears that OMG transfer function does not return a success/failure bool:
OMG:
https://etherscan.io/address/0xd26114cd6EE289AccF82350c8d8487fedB8A0C07#code
contract ERC20 is ERC20Basic {
function allowance(address owner, address spender) constant returns (uint);
function transferFrom(address from, address to, uint value);
function approve(address spender, uint value);
event Approval(address indexed owner, address indexed spender, uint value);
}
Versus other tokens:
DAI:
https://etherscan.io/address/0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359#code
contract ERC20 is ERC20Events {
function totalSupply() public view returns (uint);
function balanceOf(address guy) public view returns (uint);
function allowance(address src, address guy) public view returns (uint);
function approve(address guy, uint wad) public returns (bool);
function transfer(address dst, uint wad) public returns (bool);
function transferFrom(address src, address dst, uint wad) public returns (bool);
}
BAT:
https://etherscan.io/address/0x0d8775f648430679a709e98d2b0cb6250d2887ef#code
contract Token {
uint256 public totalSupply;
function balanceOf(address _owner) constant returns (uint256 balance);
function transfer(address _to, uint256 _value) returns (bool success);
function transferFrom(address _from, address _to, uint256 _value) returns (bool success);
function approve(address _spender, uint256 _value) returns (bool success);
function allowance(address _owner, address _spender) constant returns (uint256 remaining);
event Transfer(address indexed _from, address indexed _to, uint256 _value);
event Approval(address indexed _owner, address indexed _spender, uint256 _value);
}
ENJ:
https://etherscan.io/address/0xf629cbd94d3791c9250152bd8dfbdf380e2a3b9c#code
contract IERC20Token {
function name() public constant returns (string) { name; }
function symbol() public constant returns (string) { symbol; }
function decimals() public constant returns (uint8) { decimals; }
function totalSupply() public constant returns (uint256) { totalSupply; }
function balanceOf(address _owner) public constant returns (uint256 balance) { _owner; balance; }
function allowance(address _owner, address _spender) public constant returns (uint256 remaining) { _owner; _spender; remaining; }
function transfer(address _to, uint256 _value) public returns (bool success);
function transferFrom(address _from, address _to, uint256 _value) public returns (bool success);
function approve(address _spender, uint256 _value) public returns (bool success);
}
For a similar issue, see:
d14c63a
The text was updated successfully, but these errors were encountered: