diff --git a/common/initial_commit_tx.c b/common/initial_commit_tx.c index 0330a7801cf0..4c59db2858d6 100644 --- a/common/initial_commit_tx.c +++ b/common/initial_commit_tx.c @@ -101,7 +101,8 @@ struct bitcoin_tx *initial_commit_tx(const tal_t *ctx, enum side lessor = !opener; u32 sequence; void *dummy_local = (void *)LOCAL, *dummy_remote = (void *)REMOTE; - const void *output_order[NUM_SIDES]; + /* There is a direct, and possibly an anchor output for each side. */ + const void *output_order[2 * NUM_SIDES]; const u8 *funding_wscript = bitcoin_redeem_2of2(tmpctx, &funding_key[LOCAL], &funding_key[REMOTE]); @@ -286,6 +287,7 @@ struct bitcoin_tx *initial_commit_tx(const tal_t *ctx, } assert(n <= tx->wtx->num_outputs); + assert(n <= ARRAY_SIZE(output_order)); /* BOLT #3: *