summaryrefslogtreecommitdiff
path: root/cmd2/cmd2.py
diff options
context:
space:
mode:
Diffstat (limited to 'cmd2/cmd2.py')
-rw-r--r--cmd2/cmd2.py15
1 files changed, 10 insertions, 5 deletions
diff --git a/cmd2/cmd2.py b/cmd2/cmd2.py
index e810f809..234223c6 100644
--- a/cmd2/cmd2.py
+++ b/cmd2/cmd2.py
@@ -2089,12 +2089,17 @@ class Cmd(cmd.Cmd):
redir_error = True
else:
# going to a paste buffer
- new_stdout = tempfile.TemporaryFile(mode="w+")
- saved_state.redirecting = True
- sys.stdout = self.stdout = new_stdout
-
if statement.output == constants.REDIRECTION_APPEND:
- self.poutput(get_paste_buffer())
+ temp_file = tempfile.NamedTemporaryFile(mode='w', delete=False)
+ temp_file.write(get_paste_buffer())
+ temp_name = temp_file.name
+ new_stdout = open(temp_name, mode='a+')
+ saved_state.redirecting = True
+ sys.stdout = self.stdout = new_stdout
+ else:
+ new_stdout = tempfile.TemporaryFile(mode='w+')
+ saved_state.redirecting = True
+ sys.stdout = self.stdout = new_stdout
return redir_error, saved_state