summaryrefslogtreecommitdiffstats
path: root/src/network
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-04-12 16:41:52 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-04-12 16:41:52 (GMT)
commit0ef6bb1dfadf8e83f20e2282ff4a73a466b3de87 (patch)
tree7441b0f5235566477b9875d1a65cc0d7b033a6e3 /src/network
parent72c0128f607d1566ede78dfbba90507086e3fe80 (diff)
parentd3c1dea37f95ba2bb75a2a264e4d806c4c0c36f3 (diff)
downloadQt-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.cpp10
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;