diff options
author | Liang Qi <liang.qi@theqtcompany.com> | 2015-10-14 11:38:53 +0000 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2015-10-14 11:38:53 +0000 |
commit | e7ab9a1fb9ad3b97b534d2e3bc6e54e8d1ac7533 (patch) | |
tree | c13c9966c73e585be7dfe13602cc5ed0d080020f /src/network/socket/qabstractsocket.cpp | |
parent | 6046458dee115841c6f01b2a2e01b41be1bfbdc9 (diff) | |
parent | b7ac036b727784624cf33f5f11b8d2d1b6f16538 (diff) |
Merge "Merge remote-tracking branch 'origin/5.5' into 5.6" into refs/staging/5.6
Diffstat (limited to 'src/network/socket/qabstractsocket.cpp')
-rw-r--r-- | src/network/socket/qabstractsocket.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/network/socket/qabstractsocket.cpp b/src/network/socket/qabstractsocket.cpp index e344a9d17e..8d9975dcdb 100644 --- a/src/network/socket/qabstractsocket.cpp +++ b/src/network/socket/qabstractsocket.cpp @@ -2464,12 +2464,14 @@ qint64 QAbstractSocket::readLineData(char *data, qint64 maxlen) qint64 QAbstractSocket::writeData(const char *data, qint64 size) { Q_D(QAbstractSocket); - if (d->state == QAbstractSocket::UnconnectedState) { + if (d->state == QAbstractSocket::UnconnectedState + || (!d->socketEngine && d->socketType != TcpSocket && !d->isBuffered)) { d->setError(UnknownSocketError, tr("Socket is not connected")); return -1; } - if (!d->isBuffered && d->socketType == TcpSocket && d->writeBuffer.isEmpty()) { + if (!d->isBuffered && d->socketType == TcpSocket + && d->socketEngine && d->writeBuffer.isEmpty()) { // This code is for the new Unbuffered QTcpSocket use case qint64 written = d->socketEngine->write(data, size); if (written < 0) { |