We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent dde29b5 commit feb8c2eCopy full SHA for feb8c2e
1 file changed
adafruit_minimqtt/adafruit_minimqtt.py
@@ -854,17 +854,24 @@ def loop(self, timeout=1):
854
)
855
rcs = self.ping()
856
return rcs
857
- self._sock.settimeout(timeout)
858
859
- responses = []
+ stamp = time.monotonic()
+ self._sock.settimeout(timeout)
860
+ rcs = []
861
while True:
862
rc = self._wait_for_msg()
863
if rc == None:
864
break
865
+ if time.monotonic() - stamp > self._recv_timeout:
866
+ if self.logger is not None:
867
+ self.logger.debug(
868
+ f"Loop timed out, message queue not empty after {self._recv_timeout}s"
869
+ )
870
+ break
871
else:
- responses.append(rc)
872
+ rcs.append(rc)
873
- return responses if responses else None
874
+ return rcs if rcs else None
875
876
877
def _wait_for_msg(self, timeout=0.1):
0 commit comments