From 83003d02704f0766489498f171782ce41ee6569c Mon Sep 17 00:00:00 2001 From: Boernsman Date: Fri, 18 Oct 2019 18:46:26 +0200 Subject: [PATCH] fixed deleting of pending browse requests --- sonos/devicepluginsonos.cpp | 11 +++++------ sonos/devicepluginsonos.h | 1 - sonos/devicepluginsonos.json | 5 ----- 3 files changed, 5 insertions(+), 12 deletions(-) diff --git a/sonos/devicepluginsonos.cpp b/sonos/devicepluginsonos.cpp index 16c0ce99..fb2bbd21 100644 --- a/sonos/devicepluginsonos.cpp +++ b/sonos/devicepluginsonos.cpp @@ -24,6 +24,8 @@ #include "devices/device.h" #include "network/networkaccessmanager.h" #include "plugininfo.h" +#include "types/mediabrowseritem.h" + #include #include @@ -353,6 +355,7 @@ void DevicePluginSonos::browseDevice(BrowseResult *result) } else if (result->itemId() == "favorites") { sonosConnection->getFavorites(householdId); m_pendingBrowseResult.insert(householdId, result); + connect(result, &BrowseResult::aborted,[householdId, this](){m_pendingBrowseResult.remove(householdId);}); } else { //TODO add media browsing result->finish(Device::DeviceErrorItemNotFound); @@ -374,11 +377,7 @@ void DevicePluginSonos::executeBrowserItem(BrowserActionInfo *info) QString groupId = info->device()->paramValue(sonosGroupDeviceGroupIdParamTypeId).toString(); QUuid requestId = sonosConnection->loadFavorite(groupId, info->browserAction().itemId()); m_pendingBrowserExecution.insert(requestId, info); -} - -void DevicePluginSonos::executeBrowserItemAction(BrowserItemActionInfo *info) -{ - Q_UNUSED(info) + connect(info, &BrowserActionInfo::aborted,[requestId, this](){m_pendingBrowserExecution.remove(requestId);}); } void DevicePluginSonos::onConnectionChanged(bool connected) @@ -428,7 +427,7 @@ void DevicePluginSonos::onFavouritesReceived(const QString &householdId, QList