Bad-Jump
不斷收到 Bad Jump 錯誤
我不斷收到“Bad Jump”錯誤。我按照此處找到的指南進行操作: 為什麼我從 EtherDelta 提款失敗?
並發現我的存款和取款代幣值設置為 0。這是交易: https ://etherscan.io/tx/0x77224b7b7b71326e8bbcbb5fdcd4dc6d9daabc0729a8eb05c1b24e61bc11df1b
如果需要,我需要更改存款和取款金額以完成我的全部餘額。將向為我逐步解決此問題的第一人支付 0.5 ETH。
根據您的交易和從您的地址到 Etherdelta 合約的其他交易,您正試圖存入比您真正擁有的更多單位的代幣,因此 BAD JUMP(例外)。
一個線索可能是這個
depositToken()
函式的評論。function depositToken(address token, uint amount) { //remember to call Token(address).approve(this, amount) or this contract will not be able to do the transfer on your behalf. if (token==0) throw; if (!Token(token).transferFrom(msg.sender, this, amount)) throw; tokens[token][msg.sender] = safeAdd(tokens[token][msg.sender], amount); Deposit(token, msg.sender, amount, tokens[token][msg.sender]);
}
//記得呼叫Token(address).approve(this, amount) 否則這個合約將無法代你轉賬。
所以試試那個
approve()
功能。