void QLocalSocketPrivate::_q_pipeClosed() { Q_Q(QLocalSocket); if (state == QLocalSocket::UnconnectedState) return; emit q->readChannelFinished(); if (state != QLocalSocket::ClosingState) { state = QLocalSocket::ClosingState; emit q->stateChanged(state); if (state != QLocalSocket::ClosingState) return; } state = QLocalSocket::UnconnectedState; emit q->stateChanged(state); emit q->disconnected(); pipeReader->stop(); destroyPipeHandles(); handle = INVALID_HANDLE_VALUE; if (pipeWriter) { delete pipeWriter; pipeWriter = 0; } }
QLocalSocketPrivate::~QLocalSocketPrivate() { destroyPipeHandles(); }
QLocalSocketPrivate::~QLocalSocketPrivate() { destroyPipeHandles(); CloseHandle(overlapped.hEvent); }