From b797b883e5a5d5198858457f1ba220c6fe61db09 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Sat, 19 Nov 2022 00:36:05 +0100 Subject: [PATCH] Fix an occational crash in the deconz backend May happen if the queue runs full and controller requests time out --- .../backends/deconz/zigbeebridgecontrollerdeconz.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libnymea-zigbee/backends/deconz/zigbeebridgecontrollerdeconz.cpp b/libnymea-zigbee/backends/deconz/zigbeebridgecontrollerdeconz.cpp index 3b77797..7214c6a 100644 --- a/libnymea-zigbee/backends/deconz/zigbeebridgecontrollerdeconz.cpp +++ b/libnymea-zigbee/backends/deconz/zigbeebridgecontrollerdeconz.cpp @@ -298,6 +298,9 @@ ZigbeeInterfaceDeconzReply *ZigbeeBridgeControllerDeconz::createReply(Deconz::Co m_replyQueue.enqueue(reply); qCDebug(dcZigbeeController()) << "Enqueue request:" << reply->requestName(); } + connect(reply, &ZigbeeInterfaceDeconzReply::timeout, this, [=](){ + m_replyQueue.removeAll(reply); + }); QMetaObject::invokeMethod(this, "sendNextRequest", Qt::QueuedConnection); return reply;