We tracked down the issue to a change in the file src/ex_getln.c.
Here is the change log for the change that introduced the problem:

CVS revision 1.14
HG revision 4d9eabb139
date: 2005/02/22 08:44:08;  author: vimboss;  state: Exp;  lines: +181
-182
updated for version 7.0051

<       if (line_ga.ga_len && p[-1] == '\n')
---
>       /* we are done when a NL is entered, but not when it comes after a
>        * backslash */
>       if (line_ga.ga_len > 0 && pend[-1] == '\n'
>               && (line_ga.ga_len <= 1 || pend[-2] != '\\'))


This patch seems to be the cause of the behavior we're seeing.   Can
someone (VIMBOSS?) more familiar with this comment on this behavior,
and if it correct for ex?

--
Ray Frush
IT Infrastructure Engineer



> To recreate the problem, perform the following at the bash command
> prompt:
>
>     #Create Input file to ex
>     cat - > ex.input << EOF
>     a
>     X \\
>     Y
>     .
>     w ex.output
>     EOF
>
>     # Show input
>     cat -tvse ex.input
>     # Submit input to ex
>     ex - -u NONE < ex.input
>     #Show output
>     cat -tvse ex.output
>
> When working correctly VIM 6.3 (rhel4), the output from cat of
> ex.output is:
>
> $
> X \$
> Y$
>
> On VIM 7.x , the output from cat of ex.output is:
>
> X \...@y$
>
> Note that the '^@' indicates that we have a null character where there
> should have been a newline.
>

-- 
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

Raspunde prin e-mail lui