We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 700840b commit 093d219Copy full SHA for 093d219
src/accounts/ERC7821.sol
@@ -235,8 +235,8 @@ contract ERC7821 is Receiver {
235
assembly {
236
let c := add(calls.offset, calldataload(add(calls.offset, shl(5, i))))
237
// Replaces `to` with `address(this)` if `address(0)` is provided.
238
- // We'll skip cleaning the upper 96 bits of `to` as it is ignored in `call`.
239
- to := or(mul(address(), iszero(calldataload(c))), calldataload(c))
+ let t := shr(96, shl(96, calldataload(c)))
+ to := or(mul(address(), iszero(t)), t)
240
value := calldataload(add(c, 0x20))
241
let o := add(c, calldataload(add(c, 0x40)))
242
data.offset := add(o, 0x20)
0 commit comments