From 204ade6bcb85f48f56e52e040d1ebf40548d92be Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Sun, 11 Oct 2020 14:58:46 +0200 Subject: patch 8.2.1833: when reading from stdin dup() is called twice Problem: When reading from stdin dup() is called twice. Solution: Remove the dup() in main.c. (Ken Takata, closes #7110) --- src/main.c | 15 +++++---------- src/version.c | 2 ++ 2 files changed, 7 insertions(+), 10 deletions(-) (limited to 'src') diff --git a/src/main.c b/src/main.c index c87fdbfb55..53b871977e 100644 --- a/src/main.c +++ b/src/main.c @@ -2704,21 +2704,16 @@ read_stdin(void) no_wait_return = TRUE; i = msg_didany; set_buflisted(TRUE); - (void)open_buffer(TRUE, NULL, 0); // create memfile and read file + + // Create memfile and read from stdin. + // This will also dup stdin from stderr to read commands from. + (void)open_buffer(TRUE, NULL, 0); + no_wait_return = FALSE; msg_didany = i; TIME_MSG("reading stdin"); check_swap_exists_action(); -#if !(defined(AMIGA) || defined(MACOS_X)) - /* - * Close stdin and dup it from stderr. Required for GPM to work - * properly, and for running external commands. - * Is there any other system that cannot do this? - */ - close(0); - vim_ignored = dup(2); -#endif } /* diff --git a/src/version.c b/src/version.c index 6368b5e5b9..43613450cd 100644 --- a/src/version.c +++ b/src/version.c @@ -750,6 +750,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1833, /**/ 1832, /**/ -- cgit v1.2.3