diff --git a/IPython/terminal/pt_inputhooks/qt.py b/IPython/terminal/pt_inputhooks/qt.py index ebf3a94..34c9618 100644 --- a/IPython/terminal/pt_inputhooks/qt.py +++ b/IPython/terminal/pt_inputhooks/qt.py @@ -1,10 +1,15 @@ import sys from IPython.external.qt_for_kernel import QtCore, QtGui +# If we create a QApplication, keep a reference to it so that it doesn't get +# garbage collected. +_appref = None + def inputhook(context): + global _appref app = QtCore.QCoreApplication.instance() if not app: - return + _appref = app = QtGui.QApplication([" "]) event_loop = QtCore.QEventLoop(app) if sys.platform == 'win32':