Hi Bram,

Since Debian Stretch released, I've been catching up on Vim patches
however everything after 8.0.0314 was failing to build.  The GUI-enabled
Vim builds were failing this part of Test_getcmdtype.

  call feedkeys(":call input('Answer?')\<CR>", "t")
  call feedkeys("MyCmd a\<C-R>=Check_cmdline('@')\<CR>\<C-C>", "xt")

Non-GUI enabled builds work just fine.

This is related to the environment in which Debian/Ubuntu builds take
place -- mainly, stdin is /dev/null and stdout/stderr are connected to
pipes thus causing no_console_input()

      int
  no_console_input(void)
  {
      return ((!gui.in_use || gui.starting)
  # ifndef NO_CONSOLE
              && !isatty(0) && !isatty(2)
  # endif
              );
  }

to return a true value.  f_input() reaches this through
get_user_input(), and returns early instead of setting up the input
prompt.

  Found errors in Test_getcmdtype():
  function RunTheTest[21]..Test_getcmdtype[15]..Check_cmdline line 1: Expected 
'MyCmd a' but got ''
  function RunTheTest[21]..Test_getcmdtype[15]..Check_cmdline line 2: Expected 
8 but got 0
  function RunTheTest[21]..Test_getcmdtype[15]..Check_cmdline line 3: Expected 
'@' but got ''

fill_input_buf() already has its own, less restrictive handling of
environments such as this, which is why the non-GUI enabled builds work.
Given that, the attached patch addresses the issue but I'm not sure if
there's a better way to handle it.

Cheers,
-- 
James
GPG Key: 4096R/91BF BF4D 6956 BD5D F7B7  2D23 DFE6 91AE 331B A3DB

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.
diff --git i/src/gui.c w/src/gui.c
index ff81d0b74..f8fdd3739 100644
--- i/src/gui.c
+++ w/src/gui.c
@@ -5084,11 +5084,7 @@ display_errors(void)
     int
 no_console_input(void)
 {
-    return ((!gui.in_use || gui.starting)
-# ifndef NO_CONSOLE
-	    && !isatty(0) && !isatty(2)
-# endif
-	    );
+    return gui.in_use && gui.starting;
 }
 #endif
 

Raspunde prin e-mail lui