diff --git a/runtime/src/accounts/mod.rs b/runtime/src/accounts/mod.rs index 28343a056f087f..8b11215888e2f4 100644 --- a/runtime/src/accounts/mod.rs +++ b/runtime/src/accounts/mod.rs @@ -480,10 +480,11 @@ fn validate_fee_payer( error_counters.account_not_found += 1; return Err(TransactionError::AccountNotFound); } - let min_balance = match get_system_account_kind(payer_account).ok_or_else(|| { + let system_account_kind = get_system_account_kind(payer_account).ok_or_else(|| { error_counters.invalid_account_for_fee += 1; TransactionError::InvalidAccountForFee - })? { + })?; + let min_balance = match system_account_kind { SystemAccountKind::System => 0, SystemAccountKind::Nonce => { // Should we ever allow a fees charge to zero a nonce account's diff --git a/runtime/src/bank.rs b/runtime/src/bank.rs index 2213f9fdab105c..54f58640bb3efc 100644 --- a/runtime/src/bank.rs +++ b/runtime/src/bank.rs @@ -3090,15 +3090,11 @@ impl Bank { let (mut stake_account, stake_state) = <(AccountSharedData, StakeStateV2)>::from(stake_account); let vote_pubkey = delegation.voter_pubkey; - let Some(vote_account) = get_vote_account(&vote_pubkey) else { - return None; - }; + let vote_account = get_vote_account(&vote_pubkey)?; if vote_account.owner() != &solana_vote_program { return None; } - let Ok(vote_state) = vote_account.vote_state().cloned() else { - return None; - }; + let vote_state = vote_account.vote_state().cloned().ok()?; let pre_lamport = stake_account.lamports(); @@ -4775,9 +4771,7 @@ impl Bank { ) -> Option { let mut lamports_sum = 0u128; for i in 0..message.account_keys().len() { - let Some((_, account)) = accounts.get(i) else { - return None; - }; + let (_, account) = accounts.get(i)?; lamports_sum = lamports_sum.checked_add(u128::from(account.lamports()))?; } Some(lamports_sum)