Fixing logic of decoding data pasted into transaction.data field.
Issues:
we have a cache with functions pulled from 4byte.directory. With those functions we also keep decoded values of the pasted function call. If you paste execute(uint256,address,uint256,bytes) encoded with smart contract deployment it will be saved into the cache with those arguments from the encoded smart contract deployment function. Pasting another execute ABI encoded payload will be replaced with that smart contract deployment arguments.
updated function makeBytes32 to support all size bytes. Now it's called makeBytes.
Example of the issue. See the first log with props.data - this is the pasted value.
Other logs have a new value that is immediately replaced the value pasted.
Fixing logic of decoding data pasted into
transaction.data
field.Issues:
execute(uint256,address,uint256,bytes)
encoded with smart contract deployment it will be saved into the cache with those arguments from the encoded smart contract deployment function. Pasting anotherexecute
ABI encoded payload will be replaced with that smart contract deployment arguments.makeBytes32
to support all size bytes. Now it's calledmakeBytes
.Example of the issue. See the first log with
props.data
- this is the pasted value. Other logs have a new value that is immediately replaced the value pasted.