Feature check CPI up front (#11652)
This commit is contained in:
@ -94,12 +94,10 @@ pub fn register_syscalls<'a>(
|
|||||||
)?;
|
)?;
|
||||||
if invoke_context.is_cross_program_supported() {
|
if invoke_context.is_cross_program_supported() {
|
||||||
vm.register_syscall_ex("sol_create_program_address", syscall_create_program_address)?;
|
vm.register_syscall_ex("sol_create_program_address", syscall_create_program_address)?;
|
||||||
}
|
|
||||||
|
|
||||||
// Cross-program invocation syscalls
|
// Cross-program invocation syscalls
|
||||||
|
|
||||||
let invoke_context = Rc::new(RefCell::new(invoke_context));
|
let invoke_context = Rc::new(RefCell::new(invoke_context));
|
||||||
|
|
||||||
vm.register_syscall_with_context_ex(
|
vm.register_syscall_with_context_ex(
|
||||||
"sol_invoke_signed_c",
|
"sol_invoke_signed_c",
|
||||||
Box::new(SyscallProcessSolInstructionC {
|
Box::new(SyscallProcessSolInstructionC {
|
||||||
@ -114,6 +112,7 @@ pub fn register_syscalls<'a>(
|
|||||||
invoke_context: invoke_context.clone(),
|
invoke_context: invoke_context.clone(),
|
||||||
}),
|
}),
|
||||||
)?;
|
)?;
|
||||||
|
}
|
||||||
|
|
||||||
// Memory allocator
|
// Memory allocator
|
||||||
let heap = vec![0_u8; DEFAULT_HEAP_SIZE];
|
let heap = vec![0_u8; DEFAULT_HEAP_SIZE];
|
||||||
|
Reference in New Issue
Block a user