diff options
author | Fabian Bumberger <fbumberger@rim.com> | 2013-06-26 06:26:02 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-06-26 19:28:48 +0200 |
commit | 5cd6ab9b6369806ade7b9b4794c0c3b04472f616 (patch) | |
tree | 530d1ee17cc7885607db89b8e329e01fd31955a7 /src/bluetooth/qnx | |
parent | b6f7359c1120bd98a9f89e36bb4020f9ebd51e7c (diff) |
QNX: Fix crash when setting host mode
Change-Id: I772375768b2d7d0fd766798bb3c5bd767f66abab
Reviewed-by: Alex <alexander.blasche@digia.com>
Diffstat (limited to 'src/bluetooth/qnx')
-rw-r--r-- | src/bluetooth/qnx/ppshelpers.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/bluetooth/qnx/ppshelpers.cpp b/src/bluetooth/qnx/ppshelpers.cpp index e869235d..137b8c5f 100644 --- a/src/bluetooth/qnx/ppshelpers.cpp +++ b/src/bluetooth/qnx/ppshelpers.cpp @@ -177,6 +177,8 @@ void ppsSendControlMessage(const char *msg, QObject *sender) endCtrlMessage(encoder); } +int __newHostMode = -1; + void ppsDecodeControlResponse() { ppsResult result; @@ -246,6 +248,14 @@ void ppsDecodeControlResponse() pps_decoder_cleanup(&ppsDecoder); } + if (result.msg == "radio_init") { + qBBBluetoothDebug() << "Radio initialized"; + } else if (result.msg == "access_changed" && __newHostMode != -1) { + qBBBluetoothDebug() << "Access changed after radio init"; + ppsSendControlMessage("set_access", QString("{\"access\":%1}").arg(__newHostMode), 0); + __newHostMode = -1; + } + if (resType == RESPONSE) { QPair<int, QObject*> wMessage = takeObjectInWList(result.id); if (wMessage.second != 0) @@ -285,6 +295,15 @@ QVariant ppsReadSetting(const char *property) qWarning() << Q_FUNC_INFO << "could not read"<< property; return QVariant(); } + } else if (nodeType == PPS_TYPE_BOOL) { + bool dat; + if (pps_decoder_get_bool(&decoder, property, &dat) == PPS_DECODER_OK) { + result = dat; + qBBBluetoothDebug() << "Read setting" << result; + } else { + qWarning() << Q_FUNC_INFO << "could not read"<< property; + return QVariant(); + } } else if (nodeType == PPS_TYPE_NUMBER) { int dat; if (pps_decoder_get_int(&decoder, property, &dat) == PPS_DECODER_OK) { |