From 6385ab27c15fb06482af515acdad2937ea7971cc Mon Sep 17 00:00:00 2001 From: Jack Robison Date: Fri, 29 Dec 2017 13:54:35 -0500 Subject: [PATCH] fix handling stream with no data blobs fixes https://github.com/lbryio/lbry/issues/905 --- lbrynet/core/client/ConnectionManager.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/lbrynet/core/client/ConnectionManager.py b/lbrynet/core/client/ConnectionManager.py index af15c509e..b781628fb 100644 --- a/lbrynet/core/client/ConnectionManager.py +++ b/lbrynet/core/client/ConnectionManager.py @@ -179,8 +179,12 @@ class ConnectionManager(object): # find peers for the head blob if configured to do so if self.seek_head_blob_first: - peers = yield request_creator.get_new_peers_for_head_blob() - peers = self.return_shuffled_peers_not_connected_to(peers, new_conns_needed) + try: + peers = yield request_creator.get_new_peers_for_head_blob() + peers = self.return_shuffled_peers_not_connected_to(peers, new_conns_needed) + except KeyError: + log.warning("%s does not have a head blob", self._get_log_name()) + peers = [] else: peers = [] @@ -196,10 +200,8 @@ class ConnectionManager(object): self._get_log_name(), self._peer_connections.keys()) log.debug("%s List of connection states: %s", self._get_log_name(), [p_c_h.connection.state for p_c_h in self._peer_connections.values()]) - defer.returnValue(peers) - def _connect_to_peer(self, peer): if self.stopped: return