diff --git a/archive/DODOV2Proxy01.sol b/archive/DODOV2Proxy01.sol index 57052dc..0da3d72 100644 --- a/archive/DODOV2Proxy01.sol +++ b/archive/DODOV2Proxy01.sol @@ -335,8 +335,7 @@ contract DODOV2Proxy01 is IDODOV2Proxy01, ReentrancyGuard, InitializableOwnable uint256 originToTokenBalance = IERC20(toToken).balanceOf(msg.sender); IWETH(_WETH_).deposit{value: msg.value}(); - bool success = IWETH(_WETH_).transfer(dodoPairs[0], msg.value); - require(success, "WETH_TRANSFER_FAIL"); + SafeERC20.safeTransfer(IERC20(_WETH_), dodoPairs[0], msg.value); for (uint256 i = 0; i < dodoPairs.length; i++) { if (i == dodoPairs.length - 1) { diff --git a/contracts/SmartRoute/DODOV2Proxy02.sol b/contracts/SmartRoute/DODOV2Proxy02.sol index 0613f6e..80e8df3 100644 --- a/contracts/SmartRoute/DODOV2Proxy02.sol +++ b/contracts/SmartRoute/DODOV2Proxy02.sol @@ -226,8 +226,7 @@ contract DODOV2Proxy02 is IDODOV2Proxy01, ReentrancyGuard, InitializableOwnable uint256 originToTokenBalance = IERC20(toToken).balanceOf(msg.sender); IWETH(_WETH_).deposit{value: msg.value}(); - bool success = IWETH(_WETH_).transfer(dodoPairs[0], msg.value); - require(success, "WETH_TRANSFER_FAIL"); + SafeERC20.safeTransfer(IERC20(_WETH_), dodoPairs[0], msg.value); for (uint256 i = 0; i < dodoPairs.length; i++) { if (i == dodoPairs.length - 1) { diff --git a/contracts/SmartRoute/adapter/UniV3Adapter.sol b/contracts/SmartRoute/adapter/UniV3Adapter.sol index 996ed7c..bd95dda 100644 --- a/contracts/SmartRoute/adapter/UniV3Adapter.sol +++ b/contracts/SmartRoute/adapter/UniV3Adapter.sol @@ -103,8 +103,7 @@ contract UniV3Adapter is IDODOAdapter, IUniswapV3SwapCallback, InitializableOwna if (token == _WETH_ && address(this).balance >= value) { // pay with WETH9 IWETH(_WETH_).deposit{value: value}(); // wrap only what is needed to pay - bool success = IWETH(_WETH_).transfer(recipient, value); - require(success, "WETH_TRANSFER_FAIL"); + SafeERC20.safeTransfer(IERC20(_WETH_), recipient, value); } else if (payer == address(this)) { // pay with tokens already in the contract (for the exact input multihop case) SafeERC20.safeTransfer(IERC20(token), recipient, value);