Platform: Linux, python 2.7.1, IPython 0.10.2
To reproduce:
1) start qtlab with gui
2) close gui
3) start gui with qt.flow.start_gui()
4) run qt.mstart()
5) run qt.mend()
After step 5 the following error is produced:
WARNING:root:Send exception ([Errno 32] Broken pipe), assuming client disconnected
root: WARNING Send exception ([Errno 32] Broken pipe), assuming client disconnected
WARNING:root:Client disconnected, removing
root: WARNING Client disconnected, removing
The gui however does still work, and exits when the shell is exited.
The error is produced because the gui has disconnected and the shell does not get notified of this. It finds out when trying to send data, and only disconnects the shell side when it finds out that the sending fails. This behaviour is good when the gui closed with a crash, but closing it properly (manually) should not give ugly error messages. We need to implement a proper disconnect procedure.