summaryrefslogtreecommitdiff
path: root/alot/commands/thread.py
diff options
context:
space:
mode:
authorThomas Nixon <tom@tomn.co.uk>2018-02-18 18:38:38 +0000
committerThomas Nixon <tom@tomn.co.uk>2018-02-19 22:07:49 +0000
commitdae920e245ab9a539907740f41fac4db3028abe3 (patch)
tree047306f6f148e689ecebe93b454098f1341a0afd /alot/commands/thread.py
parent0b03f06125db7fa507592143a0c1f6fec0d8b6a2 (diff)
Fix #1191, lockup after running external command.
This is caused by urwid/urwid#285; stopping and starting the whole mainloop rather than just the screen works around this, but that's only available in newer urwid versions. This also affected the :pipeto and :pyshell commands.
Diffstat (limited to 'alot/commands/thread.py')
-rw-r--r--alot/commands/thread.py8
1 files changed, 4 insertions, 4 deletions
diff --git a/alot/commands/thread.py b/alot/commands/thread.py
index dcce2edb..ef112ef6 100644
--- a/alot/commands/thread.py
+++ b/alot/commands/thread.py
@@ -769,8 +769,8 @@ class PipeCommand(Command):
if self.notify_stdout:
ui.notify(out)
else:
- logging.debug('stop urwid screen')
- ui.mainloop.screen.stop()
+ logging.debug('stop urwid mainloop')
+ ui.mainloop.stop()
logging.debug('call: %s', self.cmd)
# if proc.stdout is defined later calls to communicate
# seem to be non-blocking!
@@ -779,8 +779,8 @@ class PipeCommand(Command):
# stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
out, err = proc.communicate(mail)
- logging.debug('start urwid screen')
- ui.mainloop.screen.start()
+ logging.debug('start urwid mainloop')
+ ui.mainloop.start()
if err:
ui.notify(err, priority='error')
return