From c73c76a3575cc99c6d64418106c75baebf2aa49e Mon Sep 17 00:00:00 2001 From: Roger Light Date: Mon, 29 Jul 2013 19:40:52 +0100 Subject: [PATCH] Fix QoS 2 reconnect handling. --- src/paho/mqtt/client.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/paho/mqtt/client.py b/src/paho/mqtt/client.py index 7d329be..f91487f 100755 --- a/src/paho/mqtt/client.py +++ b/src/paho/mqtt/client.py @@ -1511,11 +1511,16 @@ class Client: if m.qos == 1: m.state = mqtt_ms_wait_puback elif m.qos == 2: - m.state = mqtt_ms_wait_pubrec + # Preserve current state + pass else: m.state = mqtt_ms_invalid else: - self._messages.pop(self._messages.index(m)) + if m.qos != 2: + self._messages.pop(self._messages.index(m)) + else: + # Preserve current state + pass self._message_mutex.release() def _packet_queue(self, command, packet, mid, qos): -- 2.39.5