@@ -5282,7 +5282,8 @@ static void peer_reconnect(struct peer *peer,
52825282 * indicate that we would like them to re-send
52835283 * commitment signatures */
52845284 /* DTODO: Add bolt reference */
5285- send_next_commitment_number -- ;
5285+ if (!inflight -> last_tx )
5286+ send_next_commitment_number -- ;
52865287 }
52875288 }
52885289
@@ -5415,7 +5416,7 @@ static void peer_reconnect(struct peer *peer,
54155416 status_info ("Resuming splice negotation." );
54165417 resume_splice_negotiation (peer ,
54175418 false,
5418- true ,
5419+ ! inflight -> last_tx ,
54195420 false,
54205421 true);
54215422 } else if (bitcoin_txid_eq (remote_next_funding ,
@@ -5428,8 +5429,8 @@ static void peer_reconnect(struct peer *peer,
54285429 if (local_next_funding )
54295430 assume_stfu_mode (peer );
54305431 resume_splice_negotiation (peer ,
5431- true ,
5432- local_next_funding ,
5432+ next_commitment_number == peer -> next_index [ REMOTE ] - 1 ,
5433+ local_next_funding && ! inflight -> last_tx ,
54335434 true,
54345435 local_next_funding );
54355436 } else if (bitcoin_txid_eq (remote_next_funding ,
@@ -5593,7 +5594,10 @@ static void peer_reconnect(struct peer *peer,
55935594 PRIu64 ,
55945595 next_commitment_number );
55955596
5596- retransmit_commitment_signed = true;
5597+ if (!recv_tlvs || !recv_tlvs -> next_funding )
5598+ retransmit_commitment_signed = true;
5599+ else
5600+ retransmit_commitment_signed = false;
55975601
55985602 /* BOLT #2:
55995603 *
0 commit comments