diff options
author | Liang Qi <liang.qi@theqtcompany.com> | 2016-01-21 08:17:21 +0100 |
---|---|---|
committer | Liang Qi <liang.qi@theqtcompany.com> | 2016-01-21 08:17:21 +0100 |
commit | 158a3a4159bdc5a49caecd63e021dacbc06cf23c (patch) | |
tree | c3ed9aee6cabd46e5e8615b3815b92d32857c4da /src/network | |
parent | 26ece94a68fb5ae680c5639716b06c4e1ae979a8 (diff) | |
parent | 7b2fb038ae4b8b9231ae989ad309b6eca107a858 (diff) |
Merge remote-tracking branch 'origin/5.6' into dev
Conflicts:
src/corelib/io/qiodevice_p.h
src/corelib/kernel/qvariant_p.h
src/corelib/tools/qsimd.cpp
src/gui/kernel/qguiapplication.cpp
tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp
Change-Id: I742a093cbb231b282b43e463ec67173e0d29f57a
Diffstat (limited to 'src/network')
-rw-r--r-- | src/network/access/qnetworkdiskcache.cpp | 3 | ||||
-rw-r--r-- | src/network/socket/qabstractsocket.cpp | 3 | ||||
-rw-r--r-- | src/network/socket/qhttpsocketengine.cpp | 5 | ||||
-rw-r--r-- | src/network/socket/qnativesocketengine.cpp | 6 | ||||
-rw-r--r-- | src/network/socket/qnativesocketengine_p.h | 2 | ||||
-rw-r--r-- | src/network/socket/qnativesocketengine_win.cpp | 12 | ||||
-rw-r--r-- | src/network/ssl/qsslcipher.cpp | 2 |
7 files changed, 28 insertions, 5 deletions
diff --git a/src/network/access/qnetworkdiskcache.cpp b/src/network/access/qnetworkdiskcache.cpp index d8c81386cf..eb66a1a6a4 100644 --- a/src/network/access/qnetworkdiskcache.cpp +++ b/src/network/access/qnetworkdiskcache.cpp @@ -73,8 +73,7 @@ QT_BEGIN_NAMESPACE QNetworkDiskCache stores each url in its own file inside of the cacheDirectory using QDataStream. Files with a text MimeType - are compressed using qCompress. Each cache file starts with "cache_" - and ends in ".cache". Data is written to disk only in insert() + are compressed using qCompress. Data is written to disk only in insert() and updateMetaData(). Currently you cannot share the same cache files with more than diff --git a/src/network/socket/qabstractsocket.cpp b/src/network/socket/qabstractsocket.cpp index ae12371258..aa28388697 100644 --- a/src/network/socket/qabstractsocket.cpp +++ b/src/network/socket/qabstractsocket.cpp @@ -1539,7 +1539,8 @@ bool QAbstractSocketPrivate::bind(const QHostAddress &address, quint16 port, QAb localPort = socketEngine->localPort(); emit q->stateChanged(state); - socketEngine->setReadNotificationEnabled(true); + if (socketType == QAbstractSocket::UdpSocket) + socketEngine->setReadNotificationEnabled(true); return true; } diff --git a/src/network/socket/qhttpsocketengine.cpp b/src/network/socket/qhttpsocketengine.cpp index 0bb3df38fa..942d19c1b3 100644 --- a/src/network/socket/qhttpsocketengine.cpp +++ b/src/network/socket/qhttpsocketengine.cpp @@ -445,8 +445,11 @@ void QHttpSocketEngine::setReadNotificationEnabled(bool enable) d->readNotificationEnabled = enable; if (enable) { // Enabling read notification can trigger a notification. - if (bytesAvailable()) + if (bytesAvailable()) { slotSocketReadNotification(); + } else if (d->socket && d->socket->state() == QAbstractSocket::UnconnectedState) { + emitReadNotification(); + } } } diff --git a/src/network/socket/qnativesocketengine.cpp b/src/network/socket/qnativesocketengine.cpp index f21e47bab2..81be197312 100644 --- a/src/network/socket/qnativesocketengine.cpp +++ b/src/network/socket/qnativesocketengine.cpp @@ -299,6 +299,12 @@ void QNativeSocketEnginePrivate::setError(QAbstractSocket::SocketError error, Er case TemporaryErrorString: socketErrorString = QNativeSocketEngine::tr("Temporary error"); break; + case NetworkDroppedConnectionErrorString: + socketErrorString = QNativeSocketEngine::tr("Network dropped connection on reset"); + break; + case ConnectionResetErrorString: + socketErrorString = QNativeSocketEngine::tr("Connection reset by peer"); + break; case UnknownSocketErrorString: socketErrorString = QNativeSocketEngine::tr("Unknown error"); break; diff --git a/src/network/socket/qnativesocketengine_p.h b/src/network/socket/qnativesocketengine_p.h index 58bf896427..11d701e915 100644 --- a/src/network/socket/qnativesocketengine_p.h +++ b/src/network/socket/qnativesocketengine_p.h @@ -240,6 +240,8 @@ public: NotSocketErrorString, InvalidProxyTypeString, TemporaryErrorString, + NetworkDroppedConnectionErrorString, + ConnectionResetErrorString, UnknownSocketErrorString = -1 }; diff --git a/src/network/socket/qnativesocketengine_win.cpp b/src/network/socket/qnativesocketengine_win.cpp index a212d6fdc0..66e535853c 100644 --- a/src/network/socket/qnativesocketengine_win.cpp +++ b/src/network/socket/qnativesocketengine_win.cpp @@ -1251,7 +1251,17 @@ qint64 QNativeSocketEnginePrivate::nativeReceiveDatagram(char *data, qint64 maxL ret = qint64(bytesRead) > maxLength ? maxLength : qint64(bytesRead); } else { WS_ERROR_DEBUG(err); - setError(QAbstractSocket::NetworkError, ReceiveDatagramErrorString); + switch (err) { + case WSAENETRESET: + setError(QAbstractSocket::NetworkError, NetworkDroppedConnectionErrorString); + break; + case WSAECONNRESET: + setError(QAbstractSocket::ConnectionRefusedError, ConnectionResetErrorString); + break; + default: + setError(QAbstractSocket::NetworkError, ReceiveDatagramErrorString); + break; + } ret = -1; if (header) header->clear(); diff --git a/src/network/ssl/qsslcipher.cpp b/src/network/ssl/qsslcipher.cpp index d6ec822b4c..806a27cd1a 100644 --- a/src/network/ssl/qsslcipher.cpp +++ b/src/network/ssl/qsslcipher.cpp @@ -77,6 +77,8 @@ QSslCipher::QSslCipher() } /*! + \since 5.3 + Constructs a QSslCipher object for the cipher determined by \a name. The constructor accepts only supported ciphers (i.e., the \a name must identify a cipher in the list of ciphers returned by |