diff --git a/.github/actions/setup-tools/action.yml b/.github/actions/setup-tools/action.yml index 973d64fd..030fb1a0 100644 --- a/.github/actions/setup-tools/action.yml +++ b/.github/actions/setup-tools/action.yml @@ -12,7 +12,7 @@ inputs: foundry-version: description: 'Foundry version to install' required: false - default: 'v1.4.3' + default: 'v1.5.0' setup-qemu: description: 'Whether to setup QEMU for riscv support' required: false diff --git a/cartesi-rollups/contracts/src/Merkle.sol b/cartesi-rollups/contracts/src/Merkle.sol index af161b0c..23462035 100644 --- a/cartesi-rollups/contracts/src/Merkle.sol +++ b/cartesi-rollups/contracts/src/Merkle.sol @@ -142,7 +142,7 @@ library Merkle { /// @dev See `MerkleConstants` for leaf size. function getHashOfLeafAtIndex(bytes calldata data, uint256 leafIndex) internal pure returns (bytes32) { uint256 start = leafIndex << MerkleConstants.LOG2_LEAF_SIZE; - if (start < data.length) { + if (start < data.length && (start >> MerkleConstants.LOG2_LEAF_SIZE) == leafIndex) { /// forge-lint: disable-next-line(asm-keccak256) return keccak256(abi.encode(bytes32(data[start:]))); } else { diff --git a/prt/contracts/src/tournament/libs/Match.sol b/prt/contracts/src/tournament/libs/Match.sol index 6a4defc4..3da7eff4 100644 --- a/prt/contracts/src/tournament/libs/Match.sol +++ b/prt/contracts/src/tournament/libs/Match.sol @@ -204,10 +204,7 @@ library Match { return args.toCycle(state.runningLeafPosition); } - function getDivergence( - State memory state, - Commitment.Arguments memory args - ) + function getDivergence(State memory state, Commitment.Arguments memory args) internal pure returns ( diff --git a/test/Dockerfile b/test/Dockerfile index 64bfbf8d..72bb202a 100644 --- a/test/Dockerfile +++ b/test/Dockerfile @@ -8,7 +8,7 @@ RUN <