@@ -254,51 +254,49 @@ abstract contract FundsBase is Context {
254254
255255 // Return unused DR fee to mutualizer or seller's pool
256256 if (drTerms.feeAmount != 0 ) {
257- uint256 returnAmount = drTerms.feeAmount - payoff.disputeResolver;
257+ payoff.mutualizer = drTerms.feeAmount - payoff.disputeResolver;
258258
259259 // Use exchange-level mutualizer address (locked at commitment time)
260260 address mutualizerAddress = exchange.mutualizerAddress;
261261 if (mutualizerAddress == address (0 )) {
262- if (returnAmount > 0 ) {
262+ if (payoff.mutualizer > 0 ) {
263263 increaseAvailableFundsAndEmitEvent (
264264 _exchangeId,
265265 offer.sellerId,
266266 exchangeToken,
267- returnAmount ,
267+ payoff.mutualizer ,
268268 sender
269269 );
270270 }
271271 } else {
272- uint256 exchangeId = _exchangeId; // stack too deep ToDO: any other way to avoid this?
273-
274- if (returnAmount > 0 ) {
272+ if (payoff.mutualizer > 0 ) {
275273 if (exchangeToken == address (0 )) {
276274 exchangeToken = address (wNative);
277- wNative.deposit { value: returnAmount }();
275+ wNative.deposit { value: payoff.mutualizer }();
278276 }
279277 uint256 oldAllowance = IERC20 (exchangeToken).allowance (address (this ), mutualizerAddress);
280- IERC20 (exchangeToken).forceApprove (mutualizerAddress, returnAmount + oldAllowance);
278+ IERC20 (exchangeToken).forceApprove (mutualizerAddress, payoff.mutualizer + oldAllowance);
281279 }
282280
283281 try
284282 IDRFeeMutualizer (mutualizerAddress).finalizeExchange { gas: FINALIZE_EXCHANGE_FEE_GAS }(
285- exchangeId ,
286- returnAmount
283+ _exchangeId ,
284+ payoff.mutualizer
287285 )
288286 {
289287 emit IBosonFundsBaseEvents.DRFeeReturned (
290- exchangeId ,
288+ _exchangeId ,
291289 exchangeToken,
292- returnAmount ,
290+ payoff.mutualizer ,
293291 mutualizerAddress,
294292 sender
295293 );
296294 } catch {
297295 // Ignore failure to not block the main flow
298296 emit IBosonFundsBaseEvents.DRFeeReturnFailed (
299- exchangeId ,
297+ _exchangeId ,
300298 exchangeToken,
301- returnAmount ,
299+ payoff.mutualizer ,
302300 mutualizerAddress,
303301 sender
304302 );
0 commit comments