diff options
author | Timur Pocheptsov <timur.pocheptsov@qt.io> | 2020-12-10 11:11:23 +0100 |
---|---|---|
committer | Timur Pocheptsov <timur.pocheptsov@qt.io> | 2020-12-10 22:07:12 +0100 |
commit | b283ce1e836ab08e602a11ea255ee3d8e537902e (patch) | |
tree | b7ebe046bcb402ce53d36654e9e65b434a88118b /examples/network | |
parent | 188768072feee09a633fec89d9ca0d6052c6eaf8 (diff) |
secureudpclient - a speculative fix for non-reproducible crash
Not much information in a bug report: QByteArray is protected from negative
sizes and QUdpSocket too. FWIW - add one more check, similar to what
the server counterpart already had.
Pick-to: 5.15 6.0
Fixes: QTBUG-83457
Change-Id: I585fa90e0a258d2257e4fed2f24c52b47548bcbb
Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
Diffstat (limited to 'examples/network')
-rw-r--r-- | examples/network/secureudpclient/association.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/examples/network/secureudpclient/association.cpp b/examples/network/secureudpclient/association.cpp index c950260078..59df94d5b9 100644 --- a/examples/network/secureudpclient/association.cpp +++ b/examples/network/secureudpclient/association.cpp @@ -112,6 +112,11 @@ void DtlsAssociation::udpSocketConnected() void DtlsAssociation::readyRead() { + if (socket.pendingDatagramSize() <= 0) { + emit warningMessage(tr("%1: spurious read notification?").arg(name)); + return; + } + //! [6] QByteArray dgram(socket.pendingDatagramSize(), Qt::Uninitialized); const qint64 bytesRead = socket.readDatagram(dgram.data(), dgram.size()); |