mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Merge pull request #12907 from ethereum/calldataReencodeValidationBug
Calldatasize-check during ABI encoding from calldata values with nested dynamic arrays.
This commit is contained in:
@@ -1454,7 +1454,7 @@ string ABIFunctions::calldataAccessFunction(Type const& _type)
|
||||
length := calldataload(value)
|
||||
value := add(value, 0x20)
|
||||
if gt(length, 0xffffffffffffffff) { <revertStringLength>() }
|
||||
if sgt(base_ref, sub(calldatasize(), mul(length, <calldataStride>))) { <revertStringStride>() }
|
||||
if sgt(value, sub(calldatasize(), mul(length, <calldataStride>))) { <revertStringStride>() }
|
||||
)")
|
||||
("calldataStride", toCompactHexWithPrefix(arrayType->calldataStride()))
|
||||
// TODO add test
|
||||
|
||||
Reference in New Issue
Block a user