diff options
author | Thiago Macieira <thiago.macieira@intel.com> | 2022-11-18 12:49:13 -0800 |
---|---|---|
committer | Thiago Macieira <thiago.macieira@intel.com> | 2023-02-13 18:11:22 -0800 |
commit | 3aa4ac8cfba878dd2273a47f61e245404e2a0e13 (patch) | |
tree | d06ea683d44967bb851d95605468436b44fb4547 | |
parent | 7fb69fe7b3a02fb712c82a482a26a77e5176b464 (diff) |
Bluez LE: store the little-endian data in the temporary lists
This will simplify the operation when QUuid::toBytes supports selecting
the endianness.
Change-Id: Id8e48e8f498c4a029619fffd1728c8e666dbc087
Reviewed-by: Juha Vuolle <juha.vuolle@qt.io>
Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
-rw-r--r-- | src/bluetooth/qleadvertiser_bluez.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/bluetooth/qleadvertiser_bluez.cpp b/src/bluetooth/qleadvertiser_bluez.cpp index 84520269..4f1dc624 100644 --- a/src/bluetooth/qleadvertiser_bluez.cpp +++ b/src/bluetooth/qleadvertiser_bluez.cpp @@ -236,7 +236,7 @@ static void addServicesData(AdvData &data, const QList<T> &services) data.data[data.length++] = 1 + maxServices * sizeofT; data.data[data.length++] = servicesType<T>(dataComplete); for (qsizetype i = 0; i < maxServices; ++i) { - putBtData(services.at(i), data.data + data.length); + memcpy(data.data + data.length, &services.at(i), sizeofT); data.length += sizeofT; } } @@ -251,20 +251,21 @@ void QLeAdvertiserBluez::setServicesData(const QLowEnergyAdvertisingData &src, A bool ok; const quint16 service16 = service.toUInt16(&ok); if (ok) { - services16 << service16; + services16 << qToLittleEndian(service16); continue; } const quint32 service32 = service.toUInt32(&ok); if (ok) { - services32 << service32; + services32 << qToLittleEndian(service32); continue; } // QUuid::toBytes() is always Big-Endian; convert it to host order - QUuid::Id128Bytes hostOrder; + QUuid::Id128Bytes hostOrder, btOrder; QUuid::Id128Bytes qtUuidOrder = service.toBytes(); ntoh128(&qtUuidOrder, &hostOrder); - services128 << hostOrder; + btoh128(&hostOrder, &btOrder); + services128 << btOrder; } addServicesData(dest, services16); addServicesData(dest, services32); |