Skip to content

Commit

Permalink
refactor: use early return in _accrueInterests
Browse files Browse the repository at this point in the history
  • Loading branch information
julien-devatom committed Aug 7, 2023
1 parent 021b39b commit 9d8e60c
Showing 1 changed file with 15 additions and 16 deletions.
31 changes: 15 additions & 16 deletions src/Blue.sol
Original file line number Diff line number Diff line change
Expand Up @@ -371,26 +371,25 @@ contract Blue is IBlue {
if (elapsed == 0) return;

uint256 marketTotalBorrow = totalBorrow[id];
lastUpdate[id] = block.timestamp;

if (marketTotalBorrow != 0) {
uint256 borrowRate = IIrm(market.irm).borrowRate(market);
uint256 accruedInterests = marketTotalBorrow.mulWadDown(borrowRate * elapsed);
totalBorrow[id] = marketTotalBorrow + accruedInterests;
totalSupply[id] += accruedInterests;

uint256 feeShares;
if (fee[id] != 0) {
uint256 feeAmount = accruedInterests.mulWadDown(fee[id]);
// The fee amount is subtracted from the total supply in this calculation to compensate for the fact that total supply is already updated.
feeShares = feeAmount.mulDivDown(totalSupplyShares[id], totalSupply[id] - feeAmount);
supplyShares[id][feeRecipient] += feeShares;
totalSupplyShares[id] += feeShares;
}
if (marketTotalBorrow == 0) return;

emit AccrueInterests(id, borrowRate, accruedInterests, feeShares);
uint256 borrowRate = IIrm(market.irm).borrowRate(market);
uint256 accruedInterests = marketTotalBorrow.mulWadDown(borrowRate * elapsed);
totalBorrow[id] = marketTotalBorrow + accruedInterests;
totalSupply[id] += accruedInterests;

uint256 feeShares;
if (fee[id] != 0) {
uint256 feeAmount = accruedInterests.mulWadDown(fee[id]);
// The fee amount is subtracted from the total supply in this calculation to compensate for the fact that total supply is already updated.
feeShares = feeAmount.mulDivDown(totalSupplyShares[id], totalSupply[id] - feeAmount);
supplyShares[id][feeRecipient] += feeShares;
totalSupplyShares[id] += feeShares;
}

lastUpdate[id] = block.timestamp;
emit AccrueInterests(id, borrowRate, accruedInterests, feeShares);
}

// Health check.
Expand Down

0 comments on commit 9d8e60c

Please sign in to comment.