summaryrefslogtreecommitdiffstats
path: root/src/ex_cmds.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2019-11-29 23:15:25 +0100
committerBram Moolenaar <Bram@vim.org>2019-11-29 23:15:25 +0100
commit310c32e8920140f0db747c6c6eb06b1ee53cdb5a (patch)
tree6a63306e6627614a8f3b9b543f129323f3093f86 /src/ex_cmds.c
parent15a7bdcb77faabbd3a9a889957f810da2bcda13e (diff)
patch 8.1.2361: MS-Windows: test failures related to VIMDLLv8.1.2361
Problem: MS-Windows: test failures related to VIMDLL. Solution: Adjust code and tests. (Ken Takata, closes #5283)
Diffstat (limited to 'src/ex_cmds.c')
-rw-r--r--src/ex_cmds.c14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/ex_cmds.c b/src/ex_cmds.c
index 5615adcaa5..95766683c8 100644
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -1068,6 +1068,9 @@ do_filter(
pos_T orig_start = curbuf->b_op_start;
pos_T orig_end = curbuf->b_op_end;
int save_lockmarks = cmdmod.lockmarks;
+#ifdef FEAT_FILTERPIPE
+ int stmp = p_stmp;
+#endif
if (*cmd == NUL) /* no filter command */
return;
@@ -1100,20 +1103,25 @@ do_filter(
shell_flags |= SHELL_DOOUT;
#ifdef FEAT_FILTERPIPE
- if (!do_in && do_out && !p_stmp)
+# ifdef VIMDLL
+ if (!gui.in_use && !gui.starting)
+ stmp = 1; // Console mode doesn't support filterpipe.
+# endif
+
+ if (!do_in && do_out && !stmp)
{
/* Use a pipe to fetch stdout of the command, do not use a temp file. */
shell_flags |= SHELL_READ;
curwin->w_cursor.lnum = line2;
}
- else if (do_in && !do_out && !p_stmp)
+ else if (do_in && !do_out && !stmp)
{
/* Use a pipe to write stdin of the command, do not use a temp file. */
shell_flags |= SHELL_WRITE;
curbuf->b_op_start.lnum = line1;
curbuf->b_op_end.lnum = line2;
}
- else if (do_in && do_out && !p_stmp)
+ else if (do_in && do_out && !stmp)
{
/* Use a pipe to write stdin and fetch stdout of the command, do not
* use a temp file. */