IPC: Handle socket timeout correctly.

Hopefully fixes #975.
This commit is contained in:
Florian Bruhin 2015-10-02 08:08:03 +02:00
parent 264f9c4919
commit ea663f9975

View File

@ -342,7 +342,13 @@ class IPCServer(QObject):
def on_timeout(self):
"""Cancel the current connection if it was idle for too long."""
log.ipc.error("IPC connection timed out.")
self._socket.close()
self._socket.disconnectFromServer()
if self._socket is not None: # pragma: no branch
# on_socket_disconnected sets it to None
self._socket.waitForDisconnected(100)
if self._socket is not None: # pragma: no branch
# on_socket_disconnected sets it to None
self._socket.abort()
@pyqtSlot()
def update_atime(self):