diff --git a/programs/stake/src/config.rs b/programs/stake/src/config.rs index 473aa9c4a1..ee968d40c4 100644 --- a/programs/stake/src/config.rs +++ b/programs/stake/src/config.rs @@ -4,7 +4,7 @@ use bincode::{deserialize, serialized_size}; use serde_derive::{Deserialize, Serialize}; use solana_config_program::{create_config_account, get_config_data, ConfigState}; use solana_sdk::{ - account::{AccountSharedData, ReadableAccount}, + account::{AccountSharedData, ReadableAccount, WritableAccount}, genesis_config::GenesisConfig, instruction::InstructionError, keyed_account::KeyedAccount, @@ -53,7 +53,7 @@ pub fn add_genesis_account(genesis_config: &mut GenesisConfig) -> u64 { let mut account = create_config_account(vec![], &Config::default(), 0); let lamports = genesis_config.rent.minimum_balance(account.data().len()); - account.lamports = lamports.max(1); + account.set_lamports(lamports.max(1)); genesis_config.add_account(id(), account); diff --git a/runtime/src/message_processor.rs b/runtime/src/message_processor.rs index 5fbdf288b0..ade4c89ca2 100644 --- a/runtime/src/message_processor.rs +++ b/runtime/src/message_processor.rs @@ -915,7 +915,9 @@ impl MessageProcessor { ); return Err(InstructionError::InvalidRealloc); } - dst_keyed_account.try_account_ref_mut()?.lamports = src_keyed_account.lamports; + dst_keyed_account + .try_account_ref_mut()? + .set_lamports(src_keyed_account.lamports()); dst_keyed_account .try_account_ref_mut()? .set_owner(*src_keyed_account.owner());