Refactor: Add trait for loading addresses (#22903)
This commit is contained in:
@ -68,7 +68,10 @@ use {
|
||||
stake_history::StakeHistory,
|
||||
system_instruction,
|
||||
sysvar::stake_history,
|
||||
transaction::{self, SanitizedTransaction, TransactionError, VersionedTransaction},
|
||||
transaction::{
|
||||
self, DisabledAddressLoader, SanitizedTransaction, TransactionError,
|
||||
VersionedTransaction,
|
||||
},
|
||||
},
|
||||
solana_send_transaction_service::{
|
||||
send_transaction_service::{SendTransactionService, TransactionInfo},
|
||||
@ -4271,10 +4274,8 @@ where
|
||||
|
||||
fn sanitize_transaction(transaction: VersionedTransaction) -> Result<SanitizedTransaction> {
|
||||
let message_hash = transaction.message.hash();
|
||||
SanitizedTransaction::try_create(transaction, message_hash, None, |_| {
|
||||
Err(TransactionError::UnsupportedVersion)
|
||||
})
|
||||
.map_err(|err| Error::invalid_params(format!("invalid transaction: {}", err)))
|
||||
SanitizedTransaction::try_create(transaction, message_hash, None, &DisabledAddressLoader)
|
||||
.map_err(|err| Error::invalid_params(format!("invalid transaction: {}", err)))
|
||||
}
|
||||
|
||||
pub(crate) fn create_validator_exit(exit: &Arc<AtomicBool>) -> Arc<RwLock<Exit>> {
|
||||
|
@ -216,7 +216,7 @@ pub(crate) mod tests {
|
||||
signature::{Keypair, Signature, Signer},
|
||||
system_transaction,
|
||||
transaction::{
|
||||
SanitizedTransaction, Transaction, TransactionError, VersionedTransaction,
|
||||
DisabledAddressLoader, SanitizedTransaction, Transaction, VersionedTransaction,
|
||||
},
|
||||
},
|
||||
solana_transaction_status::{
|
||||
@ -298,11 +298,13 @@ pub(crate) mod tests {
|
||||
let message_hash = Hash::new_unique();
|
||||
let transaction = build_test_transaction_legacy();
|
||||
let transaction = VersionedTransaction::from(transaction);
|
||||
let transaction =
|
||||
SanitizedTransaction::try_create(transaction, message_hash, Some(true), |_| {
|
||||
Err(TransactionError::UnsupportedVersion)
|
||||
})
|
||||
.unwrap();
|
||||
let transaction = SanitizedTransaction::try_create(
|
||||
transaction,
|
||||
message_hash,
|
||||
Some(true),
|
||||
&DisabledAddressLoader,
|
||||
)
|
||||
.unwrap();
|
||||
|
||||
let expected_transaction = transaction.clone();
|
||||
let pubkey = Pubkey::new_unique();
|
||||
|
Reference in New Issue
Block a user