Fix initial outbound sync infinite loop

This commit is contained in:
Matt Corallo 2020-02-23 18:04:03 -05:00 committed by Valentine Wallace
parent e5bedc43d2
commit a5e08346c2
No known key found for this signature in database
GPG key ID: F88EC43B95E601B8

View file

@ -354,7 +354,7 @@ impl<Descriptor: SocketDescriptor, CM: Deref> PeerManager<Descriptor, CM> where
InitSyncTracker::NoSyncRequested => {}, InitSyncTracker::NoSyncRequested => {},
InitSyncTracker::ChannelsSyncing(c) if c < 0xffff_ffff_ffff_ffff => { InitSyncTracker::ChannelsSyncing(c) if c < 0xffff_ffff_ffff_ffff => {
let steps = ((MSG_BUFF_SIZE - peer.pending_outbound_buffer.len() + 2) / 3) as u8; let steps = ((MSG_BUFF_SIZE - peer.pending_outbound_buffer.len() + 2) / 3) as u8;
let all_messages = self.message_handler.route_handler.get_next_channel_announcements(0, steps); let all_messages = self.message_handler.route_handler.get_next_channel_announcements(c, steps);
for &(ref announce, ref update_a, ref update_b) in all_messages.iter() { for &(ref announce, ref update_a, ref update_b) in all_messages.iter() {
encode_and_send_msg!(announce); encode_and_send_msg!(announce);
encode_and_send_msg!(update_a); encode_and_send_msg!(update_a);