diff options
author | Qt Continuous Integration System <qt-info@nokia.com> | 2010-04-12 16:41:52 (GMT) |
---|---|---|
committer | Qt Continuous Integration System <qt-info@nokia.com> | 2010-04-12 16:41:52 (GMT) |
commit | 0ef6bb1dfadf8e83f20e2282ff4a73a466b3de87 (patch) | |
tree | 7441b0f5235566477b9875d1a65cc0d7b033a6e3 /src/network | |
parent | 72c0128f607d1566ede78dfbba90507086e3fe80 (diff) | |
parent | d3c1dea37f95ba2bb75a2a264e4d806c4c0c36f3 (diff) | |
download | Qt-0ef6bb1dfadf8e83f20e2282ff4a73a466b3de87.zip Qt-0ef6bb1dfadf8e83f20e2282ff4a73a466b3de87.tar.gz Qt-0ef6bb1dfadf8e83f20e2282ff4a73a466b3de87.tar.bz2 |
Merge branch '4.6' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into 4.6-integration
* '4.6' of scm.dev.nokia.troll.no:qt/oslo-staging-2:
CSS: fixes border only affecting the first widget.
fix closing state in QLocalSocket on Windows
Diffstat (limited to 'src/network')
-rw-r--r-- | src/network/socket/qlocalsocket_win.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/network/socket/qlocalsocket_win.cpp b/src/network/socket/qlocalsocket_win.cpp index 3283bf2..5f46ecb 100644 --- a/src/network/socket/qlocalsocket_win.cpp +++ b/src/network/socket/qlocalsocket_win.cpp @@ -39,7 +39,6 @@ ** ****************************************************************************/ -#include "qlocalsocket.h" #include "qlocalsocket_p.h" #include <private/qthread_p.h> @@ -425,6 +424,15 @@ bool QLocalSocket::flush() void QLocalSocket::disconnectFromServer() { Q_D(QLocalSocket); + + // Are we still connected? + if (!isValid()) { + // If we have unwritten data, the pipeWriter is still present. + // It must be destroyed before close() to prevent an infinite loop. + delete d->pipeWriter; + d->pipeWriter = 0; + } + flush(); if (d->pipeWriter && d->pipeWriter->bytesToWrite() != 0) { d->state = QLocalSocket::ClosingState; |