diff --git a/aptos-move/framework/aptos-framework/doc/staking_contract.md b/aptos-move/framework/aptos-framework/doc/staking_contract.md index 534999c039be2..85a4ffa6b7590 100644 --- a/aptos-move/framework/aptos-framework/doc/staking_contract.md +++ b/aptos-move/framework/aptos-framework/doc/staking_contract.md @@ -2212,6 +2212,10 @@ Allows staker to switch operator without going through the lenghthy process to u let staker_address = signer::address_of(staker); assert_staking_contract_exists(staker_address, old_operator); + assert!( + new_commission_percentage <= 100, + error::invalid_argument(EINVALID_COMMISSION_PERCENTAGE), + ); // Merging two existing staking contracts is too complex as we'd need to merge two separate stake pools. let store = borrow_global_mut<Store>(staker_address); let staking_contracts = &mut store.staking_contracts; diff --git a/aptos-move/framework/aptos-framework/sources/staking_contract.move b/aptos-move/framework/aptos-framework/sources/staking_contract.move index 5e9ba4355b995..cfdb8531ecdb4 100644 --- a/aptos-move/framework/aptos-framework/sources/staking_contract.move +++ b/aptos-move/framework/aptos-framework/sources/staking_contract.move @@ -695,6 +695,10 @@ module aptos_framework::staking_contract { let staker_address = signer::address_of(staker); assert_staking_contract_exists(staker_address, old_operator); + assert!( + new_commission_percentage <= 100, + error::invalid_argument(EINVALID_COMMISSION_PERCENTAGE), + ); // Merging two existing staking contracts is too complex as we'd need to merge two separate stake pools. let store = borrow_global_mut(staker_address); let staking_contracts = &mut store.staking_contracts;