diff options
author | Oswald Buddenhagen <oswald.buddenhagen@digia.com> | 2014-11-10 11:42:02 +0100 |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@digia.com> | 2014-11-10 11:45:49 +0100 |
commit | 0d02a06517f29c5b51fb2d3ac64a5e6d9daed5a9 (patch) | |
tree | 3426504f004cbd2fffaceec24678bb16e9abfe37 /src/network/ssl/qsslsocket.cpp | |
parent | d7a5dc0cfdae2fb22b7061301575f04f2bcc3f1c (diff) | |
parent | ba73bde66efa588a74eaaa946e80e9de2b9e2d59 (diff) |
Merge remote-tracking branch 'origin/5.4' into 5.4.0
Change-Id: I85e3dfa62f217b76447276dd7cce6b9eac3a144e
Diffstat (limited to 'src/network/ssl/qsslsocket.cpp')
-rw-r--r-- | src/network/ssl/qsslsocket.cpp | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/src/network/ssl/qsslsocket.cpp b/src/network/ssl/qsslsocket.cpp index 27b085ddbd..8887f478dd 100644 --- a/src/network/ssl/qsslsocket.cpp +++ b/src/network/ssl/qsslsocket.cpp @@ -1908,18 +1908,14 @@ qint64 QSslSocket::readData(char *data, qint64 maxlen) if (d->mode == UnencryptedMode && !d->autoStartHandshake) { readBytes = d->plainSocket->read(data, maxlen); - } else { - int bytesToRead = qMin<int>(maxlen, d->buffer.size()); - readBytes = d->buffer.read(data, bytesToRead); - } - #ifdef QSSLSOCKET_DEBUG - qDebug() << "QSslSocket::readData(" << (void *)data << ',' << maxlen << ") ==" << readBytes; + qDebug() << "QSslSocket::readData(" << (void *)data << ',' << maxlen << ") ==" + << readBytes; #endif - - // possibly trigger another transmit() to decrypt more data from the socket - if (d->buffer.isEmpty() && d->plainSocket->bytesAvailable()) { - QMetaObject::invokeMethod(this, "_q_flushReadBuffer", Qt::QueuedConnection); + } else { + // possibly trigger another transmit() to decrypt more data from the socket + if (d->plainSocket->bytesAvailable()) + QMetaObject::invokeMethod(this, "_q_flushReadBuffer", Qt::QueuedConnection); } return readBytes; |