summaryrefslogtreecommitdiffstats
path: root/src/bluetooth/qbluetoothsocket.cpp
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2016-05-06 09:16:02 +0200
committerLiang Qi <liang.qi@qt.io>2016-05-06 09:16:02 +0200
commitcaded2edf69e8a60897653ace1e10b72199c7427 (patch)
tree1b28cd7578195ca3d7e14c83ccf181adbe2476ec /src/bluetooth/qbluetoothsocket.cpp
parent9677182c07b22f5f1f4fdff3f1fce6a28f76b662 (diff)
parent54c9cd9e28bc6f0a2fa5118cfdbe922d71db6623 (diff)
Merge remote-tracking branch 'origin/5.6' into 5.7
Conflicts: examples/nfc/corkboard/corkboard.pro Change-Id: I5d1ea0a8e21a1b55dbf744c2f4b469bc51f05c7a
Diffstat (limited to 'src/bluetooth/qbluetoothsocket.cpp')
-rw-r--r--src/bluetooth/qbluetoothsocket.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/bluetooth/qbluetoothsocket.cpp b/src/bluetooth/qbluetoothsocket.cpp
index bb8e6512..8504ebd9 100644
--- a/src/bluetooth/qbluetoothsocket.cpp
+++ b/src/bluetooth/qbluetoothsocket.cpp
@@ -354,7 +354,8 @@ void QBluetoothSocket::connectToService(const QBluetoothServiceInfo &service, Op
d->connectToService(service.device().address(), service.serverChannel(), openMode);
} else {
// try doing service discovery to see if we can find the socket
- if(service.serviceUuid().isNull()){
+ if (service.serviceUuid().isNull()
+ && !service.serviceClassUuids().contains(QBluetoothUuid::SerialPort)) {
qCWarning(QT_BT) << "No port, no PSM, and no UUID provided, unable to connect";
return;
}
@@ -599,7 +600,7 @@ void QBluetoothSocket::doDeviceDiscovery(const QBluetoothServiceInfo &service, O
Q_D(QBluetoothSocket);
setSocketState(QBluetoothSocket::ServiceLookupState);
- qCDebug(QT_BT) << "Starting discovery";
+ qCDebug(QT_BT) << "Starting Bluetooth Socket discovery";
if(d->discoveryAgent) {
d->discoveryAgent->stop();
@@ -616,11 +617,12 @@ void QBluetoothSocket::doDeviceDiscovery(const QBluetoothServiceInfo &service, O
d->openMode = openMode;
+ QList<QBluetoothUuid> filterUuids = service.serviceClassUuids();
if(!service.serviceUuid().isNull())
- d->discoveryAgent->setUuidFilter(service.serviceUuid());
+ filterUuids.append(service.serviceUuid());
- if(!service.serviceClassUuids().isEmpty())
- d->discoveryAgent->setUuidFilter(service.serviceClassUuids());
+ if (!filterUuids.isEmpty())
+ d->discoveryAgent->setUuidFilter(filterUuids);
// we have to ID the service somehow
Q_ASSERT(!d->discoveryAgent->uuidFilter().isEmpty());