diff options
Diffstat (limited to 'src/network')
-rw-r--r-- | src/network/kernel/qnetworkproxy.cpp | 2 | ||||
-rw-r--r-- | src/network/socket/qlocalsocket_unix.cpp | 2 | ||||
-rw-r--r-- | src/network/socket/qnativesocketengine_unix.cpp | 3 | ||||
-rw-r--r-- | src/network/socket/qnativesocketengine_win.cpp | 3 | ||||
-rw-r--r-- | src/network/socket/qudpsocket.cpp | 4 | ||||
-rw-r--r-- | src/network/ssl/qsslkey.cpp | 3 |
6 files changed, 11 insertions, 6 deletions
diff --git a/src/network/kernel/qnetworkproxy.cpp b/src/network/kernel/qnetworkproxy.cpp index 8d30e81c3b..501afce6fc 100644 --- a/src/network/kernel/qnetworkproxy.cpp +++ b/src/network/kernel/qnetworkproxy.cpp @@ -278,6 +278,8 @@ public: void setApplicationProxyFactory(QNetworkProxyFactory *factory) { QMutexLocker lock(&mutex); + if (factory == applicationLevelProxyFactory) + return; if (applicationLevelProxy) *applicationLevelProxy = QNetworkProxy(); delete applicationLevelProxyFactory; diff --git a/src/network/socket/qlocalsocket_unix.cpp b/src/network/socket/qlocalsocket_unix.cpp index 52d8b05a6f..83bf441e3d 100644 --- a/src/network/socket/qlocalsocket_unix.cpp +++ b/src/network/socket/qlocalsocket_unix.cpp @@ -338,7 +338,7 @@ void QLocalSocketPrivate::_q_connectToSocket() fullServerName = connectingPathName; if (unixSocket.setSocketDescriptor(connectingSocket, QAbstractSocket::ConnectedState, connectingOpenMode)) { - q->QIODevice::open(connectingOpenMode); + q->QIODevice::open(connectingOpenMode | QIODevice::Unbuffered); q->emit connected(); } else { QString function = QLatin1String("QLocalSocket::connectToServer"); diff --git a/src/network/socket/qnativesocketengine_unix.cpp b/src/network/socket/qnativesocketengine_unix.cpp index b7c149c18d..295d3961a8 100644 --- a/src/network/socket/qnativesocketengine_unix.cpp +++ b/src/network/socket/qnativesocketengine_unix.cpp @@ -854,7 +854,8 @@ qint64 QNativeSocketEnginePrivate::nativeSendDatagram(const char *data, qint64 l struct sockaddr_in6 sockAddrIPv6; if (host.protocol() == QAbstractSocket::IPv6Protocol - || socketProtocol == QAbstractSocket::IPv6Protocol) { + || socketProtocol == QAbstractSocket::IPv6Protocol + || socketProtocol == QAbstractSocket::AnyIPProtocol) { memset(&sockAddrIPv6, 0, sizeof(sockAddrIPv6)); sockAddrIPv6.sin6_family = AF_INET6; sockAddrIPv6.sin6_port = htons(port); diff --git a/src/network/socket/qnativesocketengine_win.cpp b/src/network/socket/qnativesocketengine_win.cpp index 93a470c77f..4bf2a6c6e3 100644 --- a/src/network/socket/qnativesocketengine_win.cpp +++ b/src/network/socket/qnativesocketengine_win.cpp @@ -202,7 +202,8 @@ void QNativeSocketEnginePrivate::setPortAndAddress(sockaddr_in * sockAddrIPv4, q if (address.protocol() == QAbstractSocket::IPv6Protocol || address.protocol() == QAbstractSocket::AnyIPProtocol - || socketProtocol == QAbstractSocket::IPv6Protocol) { + || socketProtocol == QAbstractSocket::IPv6Protocol + || socketProtocol == QAbstractSocket::AnyIPProtocol) { memset(sockAddrIPv6, 0, sizeof(qt_sockaddr_in6)); sockAddrIPv6->sin6_family = AF_INET6; sockAddrIPv6->sin6_scope_id = address.scopeId().toInt(); diff --git a/src/network/socket/qudpsocket.cpp b/src/network/socket/qudpsocket.cpp index a31b16e97d..ec751c289e 100644 --- a/src/network/socket/qudpsocket.cpp +++ b/src/network/socket/qudpsocket.cpp @@ -332,8 +332,10 @@ qint64 QUdpSocket::writeDatagram(const char *data, qint64 size, const QHostAddre qDebug("QUdpSocket::writeDatagram(%p, %llu, \"%s\", %i)", data, size, address.toString().toLatin1().constData(), port); #endif - if (!d->ensureInitialized(address)) + if (!d->doEnsureInitialized(QHostAddress::Any, 0, address)) return -1; + if (state() == UnconnectedState) + bind(); qint64 sent = d->socketEngine->writeDatagram(data, size, address, port); d->cachedSocketDescriptor = d->socketEngine->socketDescriptor(); diff --git a/src/network/ssl/qsslkey.cpp b/src/network/ssl/qsslkey.cpp index f422952870..c1dcf7d223 100644 --- a/src/network/ssl/qsslkey.cpp +++ b/src/network/ssl/qsslkey.cpp @@ -66,10 +66,9 @@ #include <QtCore/qiodevice.h> #ifndef QT_NO_DEBUG_STREAM #include <QtCore/qdebug.h> - -QT_BEGIN_NAMESPACE #endif +QT_BEGIN_NAMESPACE /*! \internal |