Skip to content

Commit

Permalink
added safe transfer
Browse files Browse the repository at this point in the history
  • Loading branch information
sarangparikh22 committed May 6, 2022
1 parent a9e1cf4 commit 082d726
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 17 deletions.
13 changes: 9 additions & 4 deletions contracts/SushiMakerAuction.sol
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ contract SushiMakerAuction is
BoringOwnable,
ReentrancyGuard
{
using SafeERC20 for IERC20;
uint128 public stakedBidToken;

mapping(IERC20 => Bid) public bids;
Expand Down Expand Up @@ -67,7 +68,7 @@ contract SushiMakerAuction is
}

function deposit(IERC20 token, uint256 amount) external {
token.transferFrom(msg.sender, address(this), amount);
token.safeTransferFrom(msg.sender, address(this), amount);
balances[msg.sender][token] += amount;
if (token == bidToken) {
stakedBidToken += uint128(amount);
Expand All @@ -79,7 +80,7 @@ contract SushiMakerAuction is
if (token == bidToken) {
stakedBidToken -= uint128(amount);
}
token.transfer(msg.sender, amount);
token.safeTransfer(msg.sender, amount);
}

function _updateTokenBalance(
Expand All @@ -95,7 +96,11 @@ contract SushiMakerAuction is
}
}

function getBalance(address user, IERC20 token) external view returns(uint256 balance) {
function getBalance(address user, IERC20 token)
external
view
returns (uint256 balance)
{
return balances[user][token];
}

Expand Down Expand Up @@ -177,7 +182,7 @@ contract SushiMakerAuction is
uint128 recieverBalance = uint128(balances[receiver][bidToken]);
balances[receiver][bidToken] = 0;
stakedBidToken -= recieverBalance;
bidToken.transfer(
bidToken.safeTransfer(
receiver,
bidToken.balanceOf(address(this)) - stakedBidToken
);
Expand Down
1 change: 1 addition & 0 deletions contracts/interfaces/ISushiMakerAuction.sol
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
pragma solidity 0.8.11;

import "@openzeppelin/contracts/security/ReentrancyGuard.sol";
import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
import "../libraries/UniswapV2Library.sol";
import "../utils/BoringOwnable.sol";
import "../utils/BoringBatchable.sol";
Expand Down
26 changes: 13 additions & 13 deletions contracts/utils/BoringBatchable.sol
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ pragma experimental ABIEncoderV2;
// Combining BoringBatchable with msg.value can cause double spending issues
// https://www.paradigm.xyz/2021/08/two-rights-might-make-a-wrong/

import "../interfaces/IERC20.sol";
// import "../interfaces/IERC20.sol";

contract BaseBoringBatchable {
/// @dev Helper function to extract a useful revert message from a failed call.
Expand Down Expand Up @@ -54,16 +54,16 @@ contract BoringBatchable is BaseBoringBatchable {
/// Lookup `IERC20.permit`.
// F6: Parameters can be used front-run the permit and the user's permit will fail (due to nonce or other revert)
// if part of a batch this could be used to grief once as the second call would not need the permit
function permitToken(
IERC20 token,
address from,
address to,
uint256 amount,
uint256 deadline,
uint8 v,
bytes32 r,
bytes32 s
) public {
token.permit(from, to, amount, deadline, v, r, s);
}
// function permitToken(
// IERC20 token,
// address from,
// address to,
// uint256 amount,
// uint256 deadline,
// uint8 v,
// bytes32 r,
// bytes32 s
// ) public {
// token.permit(from, to, amount, deadline, v, r, s);
// }
}

0 comments on commit 082d726

Please sign in to comment.