]> git.michaelhowe.org Git - packages/p/paho-mqtt.git/commitdiff
Fix QoS 2 reconnect handling.
authorRoger Light <roger@atchoo.org>
Mon, 29 Jul 2013 18:40:52 +0000 (19:40 +0100)
committerRoger Light <roger@atchoo.org>
Mon, 3 Feb 2014 21:17:08 +0000 (21:17 +0000)
src/paho/mqtt/client.py

index 7d329be7aca0f05292e7181b27a786db7e85ca3b..f91487f0d9922e27280d3cb0b83b50f442a0857d 100755 (executable)
@@ -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):