From fe4ed43b8e21be2904f6a8adcab5765e5bb5294f Mon Sep 17 00:00:00 2001 From: Max Date: Thu, 27 Feb 2025 23:28:15 +0200 Subject: [PATCH] Add back "immutable" which was temporarily added to reduce contract size, add gasless validation --- contracts/multichain/MultichainGmRouter.sol | 10 +++++----- contracts/multichain/MultichainOrderRouter.sol | 1 + 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/contracts/multichain/MultichainGmRouter.sol b/contracts/multichain/MultichainGmRouter.sol index 53b648621..d0e813e8a 100644 --- a/contracts/multichain/MultichainGmRouter.sol +++ b/contracts/multichain/MultichainGmRouter.sol @@ -11,11 +11,11 @@ import "./MultichainRouter.sol"; contract MultichainGmRouter is MultichainRouter { - DepositVault public depositVault; - IDepositHandler public depositHandler; - WithdrawalVault public withdrawalVault; - WithdrawalHandler public withdrawalHandler; - ShiftVault public shiftVault; + DepositVault public immutable depositVault; + IDepositHandler public immutable depositHandler; + WithdrawalVault public immutable withdrawalVault; + WithdrawalHandler public immutable withdrawalHandler; + ShiftVault public immutable shiftVault; constructor( BaseConstructorParams memory params, diff --git a/contracts/multichain/MultichainOrderRouter.sol b/contracts/multichain/MultichainOrderRouter.sol index 63f311acb..a02197824 100644 --- a/contracts/multichain/MultichainOrderRouter.sol +++ b/contracts/multichain/MultichainOrderRouter.sol @@ -18,6 +18,7 @@ contract MultichainOrderRouter is MultichainRouter { IBaseOrderUtils.CreateOrderParams memory params // can't use calldata because need to modify params.numbers.executionFee ) external nonReentrant withOraclePricesForAtomicAction(relayParams.oracleParams) onlyGelatoRelay returns (bytes32) { _validateDesChainId(relayParams.desChainId); + _validateGaslessFeature(); bytes32 structHash = RelayUtils.getCreateOrderStructHash(relayParams, collateralDeltaAmount, params); _validateCall(relayParams, account, structHash, srcChainId);