Skip to content

Commit db0feb1

Browse files
committed
fixup! feat: make master vault beacon upgradable
1 parent 3a24b45 commit db0feb1

File tree

1 file changed

+4
-7
lines changed

1 file changed

+4
-7
lines changed

contracts/tokenbridge/libraries/vault/MasterVault.sol

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -130,17 +130,14 @@ contract MasterVault is Initializable, ERC4626Upgradeable, OwnableUpgradeable {
130130
if (address(oldSubVault) == address(0)) revert NoExistingSubVault();
131131

132132
uint256 _totalSupply = totalSupply();
133-
uint256 maxWithdrawAmount = oldSubVault.maxWithdraw(address(this));
133+
uint256 assetReceived = oldSubVault.withdraw(oldSubVault.maxWithdraw(address(this)), address(this), address(this));
134+
uint256 effectiveAssetExchRateWad = assetReceived.mulDiv(1e18, _totalSupply, MathUpgradeable.Rounding.Down);
135+
if (effectiveAssetExchRateWad < minAssetExchRateWad) revert TooFewAssetsReceived();
134136

137+
IERC20(asset()).safeApprove(address(oldSubVault), 0);
135138
subVault = IERC4626(address(0));
136139
subVaultExchRateWad = 1e18;
137140

138-
uint256 assetReceived = oldSubVault.withdraw(maxWithdrawAmount, address(this), address(this));
139-
IERC20(asset()).safeApprove(address(oldSubVault), 0);
140-
141-
uint256 effectiveAssetExchRateWad = assetReceived.mulDiv(1e18, _totalSupply, MathUpgradeable.Rounding.Down);
142-
if (effectiveAssetExchRateWad < minAssetExchRateWad) revert TooFewAssetsReceived();
143-
144141
emit SubvaultChanged(address(oldSubVault), address(0));
145142
}
146143

0 commit comments

Comments
 (0)