fix(SpokePool): SlowFill should still transfer if executed by recipient #345
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
SlowFill reuses existing _fillRelay logic to fill a slow relay leaf. This function has an early return path where if the msg.sender == recipient, it will exit early to avoid a transfer. This is useful for a
normal relay where a relayer, relaying to themselves, shouldn't need to send funds to itself. However, for a slow fill, the "relayer" is the contract (i.e. funds are sent out out of the spoke pool rather
than brought in by the relayer/msg.sender) so we always want to send funds if we're in a slow relay.
Signed-off-by: nicholaspai npai.nyc@gmail.com
Fixes ACX-1394