From e4225b364b6a5ce055e9c009101ddac5e2d15d36 Mon Sep 17 00:00:00 2001 From: openhands Date: Tue, 17 Mar 2026 20:49:46 +0000 Subject: [PATCH] fix: Double-subtraction if stakingPoolAddr == feeDestination (#911) --- onchain/src/LiquidityManager.sol | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/onchain/src/LiquidityManager.sol b/onchain/src/LiquidityManager.sol index 75d081c..c224016 100644 --- a/onchain/src/LiquidityManager.sol +++ b/onchain/src/LiquidityManager.sol @@ -325,7 +325,9 @@ contract LiquidityManager is ThreePositionStrategy, PriceOracle { supply -= kraiken.balanceOf(feeDestination); } (, address stakingPoolAddr) = kraiken.peripheryContracts(); - if (stakingPoolAddr != address(0)) { + // Guard against double-subtraction: if stakingPoolAddr == feeDestination, + // that balance was already deducted above. + if (stakingPoolAddr != address(0) && stakingPoolAddr != feeDestination) { supply -= kraiken.balanceOf(stakingPoolAddr); } return supply;