Add get_processed_sibling_instruction syscall (#22859) (#22956)

This commit is contained in:
Jack May
2022-02-08 09:21:11 -08:00
committed by GitHub
parent 5c69af607d
commit d05b5b0902
19 changed files with 864 additions and 66 deletions

View File

@ -98,7 +98,11 @@ pub fn builtin_process_instruction(
let log_collector = invoke_context.get_log_collector();
let program_id = invoke_context.get_caller()?;
stable_log::program_invoke(&log_collector, program_id, invoke_context.invoke_depth());
stable_log::program_invoke(
&log_collector,
program_id,
invoke_context.get_stack_height(),
);
// Skip the processor account
let keyed_accounts = &invoke_context.get_keyed_accounts()?[1..];
@ -246,7 +250,11 @@ impl solana_sdk::program_stubs::SyscallStubs for SyscallStubs {
.map(|(i, _)| message.is_writable(i))
.collect::<Vec<bool>>();
stable_log::program_invoke(&log_collector, &program_id, invoke_context.invoke_depth());
stable_log::program_invoke(
&log_collector,
&program_id,
invoke_context.get_stack_height(),
);
// Convert AccountInfos into Accounts
let mut account_indices = Vec::with_capacity(message.account_keys.len());
@ -305,9 +313,7 @@ impl solana_sdk::program_stubs::SyscallStubs for SyscallStubs {
}
}
if let Some(instruction_recorder) = &invoke_context.instruction_recorder {
instruction_recorder.record_instruction(instruction.clone());
}
invoke_context.record_instruction(invoke_context.get_stack_height(), instruction.clone());
let message = SanitizedMessage::Legacy(message);
invoke_context