diff --git a/runtime/src/bank.rs b/runtime/src/bank.rs index a72bdad522..689d44f6aa 100644 --- a/runtime/src/bank.rs +++ b/runtime/src/bank.rs @@ -236,7 +236,8 @@ impl ExecuteTimings { type BankStatusCache = StatusCache>; #[frozen_abi(digest = "32EjVUc6shHHVPpsnBAVfyBziMgyFzH8qxisLwmwwdS1")] pub type BankSlotDelta = SlotDelta>; -type TransactionAccountRefCells = Vec<(Pubkey, Rc>)>; +pub(crate) type TransactionAccountRefCell = (Pubkey, Rc>); +type TransactionAccountRefCells = Vec; // Eager rent collection repeats in cyclic manner. // Each cycle is composed of number of tiny pubkey subranges diff --git a/runtime/src/message_processor.rs b/runtime/src/message_processor.rs index debe01f3e9..655fd49c05 100644 --- a/runtime/src/message_processor.rs +++ b/runtime/src/message_processor.rs @@ -1,4 +1,5 @@ use { + crate::bank::TransactionAccountRefCell, serde::{Deserialize, Serialize}, solana_measure::measure::Measure, solana_program_runtime::{ @@ -8,7 +9,7 @@ use { timings::ExecuteDetailsTimings, }, solana_sdk::{ - account::{AccountSharedData, WritableAccount}, + account::WritableAccount, compute_budget::ComputeBudget, feature_set::{prevent_calling_precompiles_as_programs, FeatureSet}, hash::Hash, @@ -45,7 +46,7 @@ impl MessageProcessor { builtin_programs: &[BuiltinProgram], message: &Message, program_indices: &[Vec], - accounts: &[(Pubkey, Rc>)], + accounts: &[TransactionAccountRefCell], rent: Rent, log_collector: Option>>, executors: Rc>, @@ -89,9 +90,9 @@ impl MessageProcessor { // Fixup the special instructions key if present // before the account pre-values are taken care of - for (pubkey, accont) in accounts.iter().take(message.account_keys.len()) { + for (pubkey, account) in accounts.iter().take(message.account_keys.len()) { if instructions::check_id(pubkey) { - let mut mut_account_ref = accont.borrow_mut(); + let mut mut_account_ref = account.borrow_mut(); instructions::store_current_index( mut_account_ref.data_as_mut_slice(), instruction_index as u16, @@ -128,7 +129,7 @@ mod tests { super::*, crate::rent_collector::RentCollector, solana_sdk::{ - account::ReadableAccount, + account::{AccountSharedData, ReadableAccount}, instruction::{AccountMeta, Instruction, InstructionError}, keyed_account::keyed_account_at_index, message::Message,