summaryrefslogtreecommitdiffstats
path: root/src/bluetooth/qbluetoothdevicediscoveryagent_bluez.cpp
diff options
context:
space:
mode:
authorAlex Blasche <alexander.blasche@digia.com>2014-01-15 15:08:52 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-01-16 08:49:48 +0100
commit02a4f74cfefd97d88b0b1354be176a4329336004 (patch)
tree53da3c1b12995be45d4e87b53ce35d1075d4abc1 /src/bluetooth/qbluetoothdevicediscoveryagent_bluez.cpp
parentabe9056ad539d4add76ba5cc3b585eed96497989 (diff)
Emit PoweredOffError if required during device discovery start on Bluez
Change-Id: I12406b2a0fef831ed2e96340fac73156dfa71848 Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
Diffstat (limited to 'src/bluetooth/qbluetoothdevicediscoveryagent_bluez.cpp')
-rw-r--r--src/bluetooth/qbluetoothdevicediscoveryagent_bluez.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/bluetooth/qbluetoothdevicediscoveryagent_bluez.cpp b/src/bluetooth/qbluetoothdevicediscoveryagent_bluez.cpp
index 805f648a..cce27dc5 100644
--- a/src/bluetooth/qbluetoothdevicediscoveryagent_bluez.cpp
+++ b/src/bluetooth/qbluetoothdevicediscoveryagent_bluez.cpp
@@ -118,6 +118,18 @@ void QBluetoothDeviceDiscoveryAgentPrivate::start()
qCDebug(QT_BT_BLUEZ) << Q_FUNC_INFO << "ERROR: " << errorString;
lastError = QBluetoothDeviceDiscoveryAgent::InputOutputError;
Q_Q(QBluetoothDeviceDiscoveryAgent);
+ delete adapter;
+ adapter = 0;
+ emit q->error(lastError);
+ return;
+ }
+
+ if (!propertiesReply.value().value(QStringLiteral("Powered")).toBool()) {
+ qCDebug(QT_BT_BLUEZ) << "Aborting device discovery due to offline Bluetooth Adapter";
+ lastError = QBluetoothDeviceDiscoveryAgent::PoweredOffError;
+ errorString = QBluetoothDeviceDiscoveryAgent::tr("Device is powered off.");
+ delete adapter;
+ adapter = 0;
emit q->error(lastError);
return;
}