Sun, 20 Oct 2019 11:19:38 +0200
UserInterface: added 'parent' parameter to Redirector to (hopefully) prevent premature deletion.
--- a/eric6/APIs/Python3/eric6.api Sat Oct 19 20:32:26 2019 +0200 +++ b/eric6/APIs/Python3/eric6.api Sun Oct 20 11:19:38 2019 +0200 @@ -8889,7 +8889,7 @@ eric6.UI.UserInterface.Redirector.appendStdout?7 eric6.UI.UserInterface.Redirector.flush?4() eric6.UI.UserInterface.Redirector.write?4(s) -eric6.UI.UserInterface.Redirector?1(stderr) +eric6.UI.UserInterface.Redirector?1(stderr, parent=None) eric6.UI.UserInterface.UserInterface.BottomSide?7 eric6.UI.UserInterface.UserInterface.ErrorLogFileName?7 eric6.UI.UserInterface.UserInterface.LeftSide?7
--- a/eric6/Documentation/Source/eric6.UI.UserInterface.html Sat Oct 19 20:32:26 2019 +0200 +++ b/eric6/Documentation/Source/eric6.UI.UserInterface.html Sun Oct 20 11:19:38 2019 +0200 @@ -113,17 +113,21 @@ <a NAME="Redirector.__init__" ID="Redirector.__init__"></a> <h4>Redirector (Constructor)</h4> -<b>Redirector</b>(<i>stderr</i>) +<b>Redirector</b>(<i>stderr, parent=None</i>) <p> Constructor </p> <dl> -<dt><i>stderr</i></dt> +<dt><i>stderr</i> (bool)</dt> <dd> flag indicating stderr is being redirected </dd> +<dt><i>parent</i> (QObject)</dt> +<dd> +reference to the parent object +</dd> </dl> <a NAME="Redirector.__bufferedWrite" ID="Redirector.__bufferedWrite"></a> <h4>Redirector.__bufferedWrite</h4>
--- a/eric6/UI/UserInterface.py Sat Oct 19 20:32:26 2019 +0200 +++ b/eric6/UI/UserInterface.py Sun Oct 20 11:19:38 2019 +0200 @@ -68,13 +68,16 @@ appendStderr = pyqtSignal(str) appendStdout = pyqtSignal(str) - def __init__(self, stderr): + def __init__(self, stderr, parent=None): """ Constructor @param stderr flag indicating stderr is being redirected - """ - super(Redirector, self).__init__() + @type bool + @param parent reference to the parent object + @type QObject + """ + super(Redirector, self).__init__(parent) self.stderr = stderr self.buffer = '' @@ -300,8 +303,8 @@ self.shell.setDebuggerUI(self.debuggerUI) # Generate the redirection helpers - self.stdout = Redirector(False) - self.stderr = Redirector(True) + self.stdout = Redirector(False, self) + self.stderr = Redirector(True, self) # set a few dialog members for non-modal dialogs created on demand self.programsDialog = None