From 854f8e7a0ebdd6e3abfc2210a114c76a9872f8d3 Mon Sep 17 00:00:00 2001 From: Jeffrey Phillips Freeman <jeffrey.freeman@syncleus.com> Date: Wed, 28 Sep 2016 14:50:24 -0400 Subject: [PATCH] Reconnecting pakcket buffer now hashes the frames for keys. --- src/apex/aprs/igate.py | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/src/apex/aprs/igate.py b/src/apex/aprs/igate.py index 14b12d4..90f004d 100644 --- a/src/apex/aprs/igate.py +++ b/src/apex/aprs/igate.py @@ -48,11 +48,6 @@ class ReconnectingPacketBuffer(object): self.connect_kwargs = None self.connected = False - def __next_index(self): - if self.current_index > self.MAX_INDEX: - self.current_index = 0 - return ++self.current_index - def __increment_wait_time(self): self.reconnect_wait_time *= self.WAIT_TIME_MULTIPLIER if self.reconnect_wait_time > self.MAX_WAIT_TIME: @@ -86,7 +81,7 @@ class ReconnectingPacketBuffer(object): self.__reset_wait_time() if read_packet: with self.lock: - self.from_packet_layer[self.__next_index()] = read_packet + self.from_packet_layer[str(aprs_util.hash_frame(read_packet))] = read_packet io_occured = True except IOError: try: @@ -107,7 +102,7 @@ class ReconnectingPacketBuffer(object): io_occured = True self.__reset_wait_time() except IOError: - self.to_packet_layer[self.__next_index()] = write_packet + self.to_packet_layer[str(aprs_util.hash_frame(read_packet))] = write_packet try: self.packet_layer.close() except IOError: @@ -150,7 +145,7 @@ class ReconnectingPacketBuffer(object): def write(self, packet): with self.lock: - self.to_packet_layer[self.__next_index()] = packet + self.to_packet_layer[str(aprs_util.hash_frame(read_packet))] = packet class IGate(object): -- GitLab