一些批量操作增加数组是否未空的判断

This commit is contained in:
zhl 2023-04-19 17:58:10 +08:00
parent 6edd2a756d
commit 313029ff9d

View File

@ -199,6 +199,10 @@ contract BEMultiSigWallet is AccessControlEnumerable {
bytes32 salt,
uint256 delay
) external virtual onlyRoleOrOpenRole(PROPOSER_ROLE) {
require(
targets.length > 0,
"BEMultiSigWallet: no transactions to schedule"
);
require(
targets.length == values.length,
"BEMultiSigWallet: length mismatch"
@ -247,6 +251,7 @@ contract BEMultiSigWallet is AccessControlEnumerable {
function confirmTransaction(
bytes32[] calldata ids
) external onlyRoleOrOpenRole(CONFIRM_ROLE) {
require(ids.length > 0, "BEMultiSigWallet: empty ids");
for (uint256 i = 0; i < ids.length; ++i) {
require(
isOperationPending(ids[i]),
@ -263,6 +268,7 @@ contract BEMultiSigWallet is AccessControlEnumerable {
function revokeConfirmation(
bytes32[] calldata ids
) external onlyRoleOrOpenRole(CONFIRM_ROLE) {
require(ids.length > 0, "BEMultiSigWallet: empty ids");
for (uint256 i = 0; i < ids.length; ++i) {
require(
isOperationPending(ids[i]),
@ -289,6 +295,7 @@ contract BEMultiSigWallet is AccessControlEnumerable {
bytes32 predecessor,
bytes32 salt
) external payable virtual onlyRoleOrOpenRole(EXECUTOR_ROLE) {
require(targets.length > 0, "BEMultiSigWallet: no calls to make");
require(
targets.length == values.length,
"BEMultiSigWallet: length mismatch"