@@ -553,7 +553,7 @@ func estimateGas(
553553 logger = & log.RelayLogger {Logger : logger .With (logAttrRawTxData , hex .EncodeToString (rawTxData ))}
554554 }
555555
556- estimatedGas , err := c .client .EstimateGasFromTx (ctx , tx )
556+ estimatedGas , err := c .client .EstimateGasFromTx (ctx , tx , c . ethereumSigner . Address () )
557557 if err != nil {
558558 if revertReason , rawErrorData , err := c .getRevertReasonFromRpcError (err ); err != nil {
559559 // Raw error data may be available even if revert reason isn't available.
@@ -666,7 +666,9 @@ func (iter *CallIter) buildSingleTx(ctx context.Context, c *Chain) (*CallIterBui
666666 // gas estimation
667667 {
668668 opts .GasLimit = math .MaxUint64
669+ c .ethereumSigner .NoSign = true
669670 tx , err := c .BuildMessageTx (opts , iter .Current (), iter .skipUpdateClientCommitment )
671+ c .ethereumSigner .NoSign = false
670672 if err != nil {
671673 logger .Error ("failed to build tx for gas estimation" , err )
672674 return nil , err
@@ -710,7 +712,9 @@ func (iter *CallIter) buildMultiTx(ctx context.Context, c *Chain) (*CallIterBuil
710712 logger := iter .updateLoggerMessageInfo (logger , i , 1 )
711713
712714 // note that its nonce is not checked
715+ c .ethereumSigner .NoSign = true
713716 tx , err := c .BuildMessageTx (opts , iter .msgs [i ], iter .skipUpdateClientCommitment )
717+ c .ethereumSigner .NoSign = false
714718 if err != nil {
715719 logger .Error ("failed to build tx for gas estimation" , err )
716720 return nil , err
@@ -745,7 +749,9 @@ func (iter *CallIter) buildMultiTx(ctx context.Context, c *Chain) (*CallIterBuil
745749 })
746750 }
747751
752+ c .ethereumSigner .NoSign = true
748753 multiTx , err := c .multicall3 .Aggregate (opts , calls )
754+ c .ethereumSigner .NoSign = false
749755 if err != nil {
750756 return err
751757 }
0 commit comments