diff options
author | Robin Burchell <robin.burchell@jollamobile.com> | 2014-03-21 14:58:52 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-03-21 16:52:00 +0100 |
commit | a82291aea1d2e0554f727f40b92845e385ea1a1e (patch) | |
tree | 88590ea04e344a8e1b8addd2e96e4bc7d1b9022c /src/network/socket/qnativesocketengine_unix.cpp | |
parent | aecc14fff88dba092ce3759be1d009bd23fbf573 (diff) |
QNativeSocketEngine(UNIX): Report the native socket error, not the Qt-derived error
This prevents error reporting from being useless in case an errno value isn't
one we anticipate.
Change-Id: I65f8c2570d07971a06ba3687d75e9df91a0e7611
Reviewed-by: Richard J. Moore <rich@kde.org>
Diffstat (limited to 'src/network/socket/qnativesocketengine_unix.cpp')
-rw-r--r-- | src/network/socket/qnativesocketengine_unix.cpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/network/socket/qnativesocketengine_unix.cpp b/src/network/socket/qnativesocketengine_unix.cpp index b6035b5500..11a14359d7 100644 --- a/src/network/socket/qnativesocketengine_unix.cpp +++ b/src/network/socket/qnativesocketengine_unix.cpp @@ -403,6 +403,9 @@ bool QNativeSocketEnginePrivate::nativeConnect(const QHostAddress &addr, quint16 } int connectResult = qt_safe_connect(socketDescriptor, sockAddrPtr, sockAddrSize); +#if defined (QNATIVESOCKETENGINE_DEBUG) + int ecopy = errno; +#endif if (connectResult == -1) { switch (errno) { case EISCONN: @@ -454,7 +457,7 @@ bool QNativeSocketEnginePrivate::nativeConnect(const QHostAddress &addr, quint16 qDebug("QNativeSocketEnginePrivate::nativeConnect(%s, %i) == false (%s)", addr.toString().toLatin1().constData(), port, socketState == QAbstractSocket::ConnectingState - ? "Connection in progress" : socketErrorString.toLatin1().constData()); + ? "Connection in progress" : strerror(ecopy)); #endif return false; } @@ -522,6 +525,9 @@ bool QNativeSocketEnginePrivate::nativeBind(const QHostAddress &address, quint16 } if (bindResult < 0) { +#if defined (QNATIVESOCKETENGINE_DEBUG) + int ecopy = errno; +#endif switch(errno) { case EADDRINUSE: setError(QAbstractSocket::AddressInUseError, AddressInuseErrorString); @@ -541,7 +547,7 @@ bool QNativeSocketEnginePrivate::nativeBind(const QHostAddress &address, quint16 #if defined (QNATIVESOCKETENGINE_DEBUG) qDebug("QNativeSocketEnginePrivate::nativeBind(%s, %i) == false (%s)", - address.toString().toLatin1().constData(), port, socketErrorString.toLatin1().constData()); + address.toString().toLatin1().constData(), port, strerror(ecopy)); #endif return false; @@ -561,6 +567,9 @@ bool QNativeSocketEnginePrivate::nativeBind(const QHostAddress &address, quint16 bool QNativeSocketEnginePrivate::nativeListen(int backlog) { if (qt_safe_listen(socketDescriptor, backlog) < 0) { +#if defined (QNATIVESOCKETENGINE_DEBUG) + int ecopy = errno; +#endif switch (errno) { case EADDRINUSE: setError(QAbstractSocket::AddressInUseError, @@ -572,7 +581,7 @@ bool QNativeSocketEnginePrivate::nativeListen(int backlog) #if defined (QNATIVESOCKETENGINE_DEBUG) qDebug("QNativeSocketEnginePrivate::nativeListen(%i) == false (%s)", - backlog, socketErrorString.toLatin1().constData()); + backlog, strerror(ecopy)); #endif return false; } |