diff options
| author | Eliseo Martínez <eliseomarmol@gmail.com> | 2014-11-24 12:35:21 +0100 | 
|---|---|---|
| committer | Eliseo Martínez <eliseomarmol@gmail.com> | 2014-11-28 20:00:06 +0100 | 
| commit | 2072fd30580a95d2fbac7939d2779a963f43e005 (patch) | |
| tree | c5b8a20fb624033b40f0cdf07b88dc9f0aa07474 /src/nvim/diff.c | |
| parent | 68cee4c28d6c309e18ae35eeba9d5dffaf1078ca (diff) | |
| download | rneovim-2072fd30580a95d2fbac7939d2779a963f43e005.tar.gz rneovim-2072fd30580a95d2fbac7939d2779a963f43e005.tar.bz2 rneovim-2072fd30580a95d2fbac7939d2779a963f43e005.zip | |
Fix newline substitution.
Problem  : Command `s/\n//` is being translated into a call to do_join
           with a count of 1. But do_join asserts its precondition count
           >= 2, which is causing the program to abort.
Note     : This in fact revealed bigger problems: generated join command
           line count, as well as reported substitutions/lines were
           wrong in several cases, since patch 7.4.232.
           See:
           [patch] http://markmail.org/message/vo7ruair5raccawp
           [issue] https://code.google.com/p/vim/issues/detail?id=287
Solution : - Don't generate join command for single-line-range case.
           - Make generated join command include:
             * lines in range + 1, when range doesn't end at last line.
             * lines in range, when range ends at last line.
           - Make reported substitutions/lines always be
             number-of-lines-joined - 1.
Diffstat (limited to 'src/nvim/diff.c')
0 files changed, 0 insertions, 0 deletions
