diff --git a/netatmo/devicepluginnetatmo.cpp b/netatmo/devicepluginnetatmo.cpp index 6f20a476..d8ace1be 100644 --- a/netatmo/devicepluginnetatmo.cpp +++ b/netatmo/devicepluginnetatmo.cpp @@ -117,12 +117,6 @@ void DevicePluginNetatmo::deviceRemoved(Device *device) OAuth2 * authentication = m_authentications.key(device); m_authentications.remove(authentication); authentication->deleteLater(); - - if (m_pluginTimer) { - m_pluginTimer->deleteLater(); - m_pluginTimer = nullptr; - } - } else if (device->deviceClassId() == indoorDeviceClassId) { NetatmoBaseStation *indoor = m_indoorDevices.key(device); m_indoorDevices.remove(indoor); @@ -132,6 +126,11 @@ void DevicePluginNetatmo::deviceRemoved(Device *device) m_outdoorDevices.remove(outdoor); outdoor->deleteLater(); } + + if (myDevices().isEmpty() && m_pluginTimer) { + m_pluginTimer->deleteLater(); + m_pluginTimer = nullptr; + } } DeviceManager::DeviceError DevicePluginNetatmo::executeAction(Device *device, const Action &action)