From ec8ba76e4d29bbdbf0c9fc3a22207e21bfb2011a Mon Sep 17 00:00:00 2001 From: "mergify[bot]" <37929162+mergify[bot]@users.noreply.github.com> Date: Sun, 11 Apr 2021 20:31:22 +0800 Subject: [PATCH] Fix account copy step in program test message processor (#16469) (#16472) (cherry picked from commit 278c125d990418521772d24daa0eef76e4a88616) Co-authored-by: Justin Starry --- program-test/src/lib.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/program-test/src/lib.rs b/program-test/src/lib.rs index f959867d08..70782e1ad9 100644 --- a/program-test/src/lib.rs +++ b/program-test/src/lib.rs @@ -290,13 +290,13 @@ impl solana_sdk::program_stubs::SyscallStubs for SyscallStubs { .map_err(|err| ProgramError::try_from(err).unwrap_or_else(|err| panic!("{}", err)))?; // Copy writeable account modifications back into the caller's AccountInfos - for (i, instruction_account) in instruction.accounts.iter().enumerate() { - if !instruction_account.is_writable { + for (i, account_pubkey) in message.account_keys.iter().enumerate() { + if !message.is_writable(i, true) { continue; } for account_info in account_infos { - if *account_info.unsigned_key() == instruction_account.pubkey { + if account_info.unsigned_key() == account_pubkey { let account = &accounts[i]; **account_info.try_borrow_mut_lamports().unwrap() = account.borrow().lamports;