Update feature switch for reduced required deploy balance (#19999)

This commit is contained in:
Justin Starry
2021-09-19 14:50:41 -05:00
committed by GitHub
parent f579f73700
commit ea34eb8a4b
2 changed files with 11 additions and 3 deletions

View File

@ -32,7 +32,7 @@ use solana_sdk::{
entrypoint::{HEAP_LENGTH, SUCCESS},
feature_set::{
add_missing_program_error_mappings, close_upgradeable_program_accounts, fix_write_privs,
stop_verify_mul64_imm_nonzero,
reduce_required_deploy_balance, stop_verify_mul64_imm_nonzero,
},
ic_logger_msg, ic_msg,
instruction::{AccountMeta, InstructionError},
@ -390,7 +390,10 @@ fn process_loader_upgradeable_instruction(
return Err(InstructionError::InvalidArgument);
}
if invoke_context.is_feature_active(&fix_write_privs::id()) {
let predrain_buffer = invoke_context
.is_feature_active(&reduce_required_deploy_balance::id())
&& invoke_context.is_feature_active(&fix_write_privs::id());
if predrain_buffer {
// Drain the Buffer account to payer before paying for programdata account
payer
.try_account_ref_mut()?
@ -448,7 +451,7 @@ fn process_loader_upgradeable_instruction(
})?;
program.try_account_ref_mut()?.set_executable(true);
if !invoke_context.is_feature_active(&fix_write_privs::id()) {
if !predrain_buffer {
// Drain the Buffer account back to the payer
payer
.try_account_ref_mut()?