diff --git a/protocols/web3storage-bounty/smart-contract/contracts/Web3BountyContract.sol b/protocols/web3storage-bounty/smart-contract/contracts/Web3BountyContract.sol index 8e1ef8b..d6eeeb2 100644 --- a/protocols/web3storage-bounty/smart-contract/contracts/Web3BountyContract.sol +++ b/protocols/web3storage-bounty/smart-contract/contracts/Web3BountyContract.sol @@ -128,6 +128,8 @@ contract Web3BountyContract is Ownable, ReentrancyGuard { deals[_deal_id].owner == msg.sender, "Can't cancel someone else request" ); + + if (deals[_deal_id].value > 0) { // Send back payment bool success; @@ -185,7 +187,8 @@ contract Web3BountyContract is Ownable, ReentrancyGuard { require(deals[_deal_id].timestamp_start > 0, "Deal didn't started"); require(!deals[_deal_id].claimed, "Deal claimed yet"); require(deals[_deal_id].value > 0, "Deal doesn't have value to claim"); - + //KS-PLW-04 Dealer can claim bounty when deal is canceled + require(!deals[_deal_id].canceled, "Deal already canceled"); // NOTE: // _proof is maintained for compatibility purposes // contract will not use it so we suggest to send it empty