diff --git a/src/bluetooth/qbluetoothservicediscoveryagent_winrt.cpp b/src/bluetooth/qbluetoothservicediscoveryagent_winrt.cpp index 1d98874fe0258f27485a3d6f7640a815653d972f..29ccb290c97d779a1f5a19f38ed32d0818ad689f 100644 --- a/src/bluetooth/qbluetoothservicediscoveryagent_winrt.cpp +++ b/src/bluetooth/qbluetoothservicediscoveryagent_winrt.cpp @@ -427,6 +427,9 @@ QBluetoothServiceInfo::Sequence QWinRTBluetoothServiceDiscoveryWorker::readSeque BYTE length; hr = dataReader->ReadByte(&length); Q_ASSERT_SUCCEEDED(hr); + remainingLength -= 1; + if (bytesRead) + *bytesRead += 1; HString value; hr = dataReader->ReadString(length, value.GetAddressOf()); Q_ASSERT_SUCCEEDED(hr); @@ -435,7 +438,7 @@ QBluetoothServiceInfo::Sequence QWinRTBluetoothServiceDiscoveryWorker::readSeque result.append(QVariant::fromValue(str)); remainingLength -= length; if (bytesRead) - *bytesRead += 2; + *bytesRead += length; break; } case TYPE_SEQUENCE: {