Skip to content

Commit 157a2e9

Browse files
committed
fuzz, cpi: fix segfaults in CPI logic
1 parent cf04265 commit 157a2e9

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

src/flamenco/runtime/tests/harness/fd_instr_harness.c

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,11 @@ fd_runtime_fuzz_instr_ctx_create( fd_runtime_fuzz_runner_t * runner,
7777
ulong funk_gaddr = fd_wksp_gaddr( funk_wksp, funk );
7878
ulong sysvar_cache_gaddr = fd_wksp_gaddr( runtime_wksp, slot_ctx->sysvar_cache );
7979

80+
/* Set up mock txn descriptor */
81+
fd_txn_t * txn_descriptor = fd_spad_alloc( runner->spad, fd_txn_align(), fd_txn_footprint( 1UL, 0UL ) );
82+
txn_descriptor->transaction_version = FD_TXN_V0;
83+
txn_descriptor->acct_addr_cnt = (ushort)test_ctx->accounts_count;
84+
8085
fd_exec_txn_ctx_from_exec_slot_ctx( slot_ctx,
8186
txn_ctx,
8287
funk_wksp,
@@ -86,10 +91,12 @@ fd_runtime_fuzz_instr_ctx_create( fd_runtime_fuzz_runner_t * runner,
8691
funk_gaddr );
8792
fd_exec_txn_ctx_setup_basic( txn_ctx );
8893

94+
txn_ctx->txn_descriptor = txn_descriptor;
8995
txn_ctx->compute_unit_limit = test_ctx->cu_avail;
9096
txn_ctx->compute_meter = test_ctx->cu_avail;
9197
txn_ctx->vote_accounts_pool = NULL;
9298
txn_ctx->spad = runner->spad;
99+
txn_ctx->instr_info_cnt = 1UL;
93100

94101
/* Set up instruction context */
95102

0 commit comments

Comments
 (0)