fix(ctb): Remove minGas revert in relayMessage#5508
Conversation
|
|
Current dependencies on/for this PR:
This comment was auto-generated by Graphite. |
941664a to
3b6fcbf
Compare
7bbc512 to
361d372
Compare
packages/contracts-bedrock/contracts/universal/CrossDomainMessenger.sol
Outdated
Show resolved
Hide resolved
|
Fixes CLI-3870 |
|
Semgrep found 2
Unchecked type assertion. Created by unchecked-type-assertion. |
c136b42 to
48ef885
Compare
67d5326 to
cd984d0
Compare
…e external call + finish execution
48ef885 to
1c61224
Compare
cd984d0 to
2bf225a
Compare
✅ Deploy Preview for opstack-docs canceled.
|
|
This PR has been added to the merge queue, and will be merged soon. |
|
This PR is next in line to be merged, and will be merged as soon as checks pass. |
|
@Mergifyio unqueue |
☑️ The pull request is not queued |
|
This PR has been added to the merge queue, and will be merged soon. |
|
This PR is next in line to be merged, and will be merged as soon as checks pass. |
`CrossDomainMessager` whereby `relayMessage` naively reset the `xDomainMsgSender` after a call. The issue here was that a nested call would reset this value to the `Constants.DEFAULT_L2_SENDER` which deviates from the expected behavior that the `xDomainMsgSender` is set to the `_sender` for the entirety of the subcall. This change sets a message as failed upon re-entry to the `relayMessage` function by checking the value of `xDomainMsgSender`. We then also remove the `reentrancyLocks` from storage and don't have to worry about re-entrency here since any subcall through the `SafeCall` lib to the XDM `relayMessage` will be caught and recorded as failed by the aforementioned `xDomainMsgSender` check. Also removes the revert in `relayMessage` when the minimum gas threshold is not met. See: - ethereum-optimism/optimism#5475 - ethereum-optimism/optimism#5444 - ethereum-optimism/optimism#5493 - ethereum-optimism/optimism#5508

Overview
Removes the revert in
relayMessagewhen the minimum gas threshold is not met.Metadata
Fixes CLI-3870