diff options
author | Florian Bruhin <me@the-compiler.org> | 2021-04-23 10:42:34 +0200 |
---|---|---|
committer | Florian Bruhin <me@the-compiler.org> | 2021-04-23 10:42:34 +0200 |
commit | c7b3559d820ebdc8b3077fce3d782e6ab81cb732 (patch) | |
tree | d693301055cd0ca21b514388fd8d61a790435ff3 /qutebrowser | |
parent | b1265cbeffb6778951a4f2d7a53bd4fc18607a5c (diff) | |
download | qutebrowser-c7b3559d820ebdc8b3077fce3d782e6ab81cb732.tar.gz qutebrowser-c7b3559d820ebdc8b3077fce3d782e6ab81cb732.zip |
Fix :spawn -u -o
Fixes #6407
Diffstat (limited to 'qutebrowser')
-rw-r--r-- | qutebrowser/browser/commands.py | 3 | ||||
-rw-r--r-- | qutebrowser/commands/userscripts.py | 10 |
2 files changed, 8 insertions, 5 deletions
diff --git a/qutebrowser/browser/commands.py b/qutebrowser/browser/commands.py index 23e42d66d..e9653ae19 100644 --- a/qutebrowser/browser/commands.py +++ b/qutebrowser/browser/commands.py @@ -1099,8 +1099,7 @@ class CommandDispatcher: try: runner = self._run_userscript( s, cmd, args, verbose, output_messages, count) - runner.finished.connect(functools.partial( - _on_proc_finished, runner.proc)) + runner.finished.connect(_on_proc_finished) except cmdutils.CommandError as e: message.error(str(e)) diff --git a/qutebrowser/commands/userscripts.py b/qutebrowser/commands/userscripts.py index f74d3ef59..70c639207 100644 --- a/qutebrowser/commands/userscripts.py +++ b/qutebrowser/commands/userscripts.py @@ -108,10 +108,11 @@ class _BaseUserscriptRunner(QObject): Signals: got_cmd: Emitted when a new command arrived and should be executed. finished: Emitted when the userscript finished running. + arg: The finished GUIProcess object. """ got_cmd = pyqtSignal(str) - finished = pyqtSignal() + finished = pyqtSignal(guiprocess.GUIProcess) def __init__(self, parent=None): super().__init__(parent) @@ -288,8 +289,10 @@ class _POSIXUserscriptRunner(_BaseUserscriptRunner): self._reader.cleanup() self._reader.deleteLater() self._reader = None + + proc = self.proc super()._cleanup() - self.finished.emit() + self.finished.emit(proc) class _WindowsUserscriptRunner(_BaseUserscriptRunner): @@ -321,8 +324,9 @@ class _WindowsUserscriptRunner(_BaseUserscriptRunner): log.misc.error("Invalid unicode in userscript output: {}" .format(e)) + proc = self.proc super()._cleanup() - self.finished.emit() + self.finished.emit(proc) @pyqtSlot() def on_proc_error(self): |