diff options
Diffstat (limited to 'src/plugins')
-rw-r--r-- | src/plugins/platforms/qnx/qqnxvirtualkeyboard.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/plugins/platforms/qnx/qqnxvirtualkeyboard.cpp b/src/plugins/platforms/qnx/qqnxvirtualkeyboard.cpp index 9c336baeb9..685e5f0f0b 100644 --- a/src/plugins/platforms/qnx/qqnxvirtualkeyboard.cpp +++ b/src/plugins/platforms/qnx/qqnxvirtualkeyboard.cpp @@ -58,7 +58,7 @@ QT_BEGIN_NAMESPACE -const char *QQnxVirtualKeyboard::ms_PPSPath = "/pps/services/input/control?wait"; +const char *QQnxVirtualKeyboard::ms_PPSPath = "/pps/services/input/control"; const size_t QQnxVirtualKeyboard::ms_bufferSize = 2048; // Huge hack for keyboard shadow (see QNX PR 88400). Should be removed ASAP. @@ -181,6 +181,11 @@ void QQnxVirtualKeyboard::ppsDataReady() return; } + // We sometimes get spurious read notifications when no data is available. + // Bail out early in this case + if (nread == 0) + return; + // nread is the real space necessary, not the amount read. if (static_cast<size_t>(nread) > ms_bufferSize - 1) { qCritical("QQnxVirtualKeyboard: Keyboard buffer size too short; need %u.", nread + 1); |