mirror of
https://github.com/vim/vim.git
synced 2025-07-26 11:04:33 -04:00
patch 8.2.2880: unified diff fails if actually used
Problem: Unified diff fails if actually used. Solution: Invoke :diffupdate in the test. Fix the check for working external diff. (Ghjuvan Lacambre, Christian Brabandt, closes #8197)
This commit is contained in:
parent
f5409dbf66
commit
ad5c178a19
@ -1007,10 +1007,12 @@ check_external_diff(diffio_T *diffio)
|
|||||||
|
|
||||||
for (;;)
|
for (;;)
|
||||||
{
|
{
|
||||||
// There must be a line that contains "1c1".
|
// For normal diff there must be a line that contains
|
||||||
|
// "1c1". For unified diff "@@ -1 +1 @@".
|
||||||
if (vim_fgets(linebuf, LBUFLEN, fd))
|
if (vim_fgets(linebuf, LBUFLEN, fd))
|
||||||
break;
|
break;
|
||||||
if (STRNCMP(linebuf, "1c1", 3) == 0)
|
if (STRNCMP(linebuf, "1c1", 3) == 0
|
||||||
|
|| STRNCMP(linebuf, "@@ -1 +1 @@", 11) == 0)
|
||||||
ok = TRUE;
|
ok = TRUE;
|
||||||
}
|
}
|
||||||
fclose(fd);
|
fclose(fd);
|
||||||
|
@ -796,6 +796,7 @@ func VerifyBoth(buf, dumpfile, extra)
|
|||||||
|
|
||||||
" also test unified diff
|
" also test unified diff
|
||||||
call term_sendkeys(a:buf, ":call SetupUnified()\<CR>:")
|
call term_sendkeys(a:buf, ":call SetupUnified()\<CR>:")
|
||||||
|
call term_sendkeys(a:buf, ":redraw!\<CR>:")
|
||||||
call VerifyScreenDump(a:buf, a:dumpfile, {}, 'unified')
|
call VerifyScreenDump(a:buf, a:dumpfile, {}, 'unified')
|
||||||
call term_sendkeys(a:buf, ":call StopUnified()\<CR>:")
|
call term_sendkeys(a:buf, ":call StopUnified()\<CR>:")
|
||||||
endfunc
|
endfunc
|
||||||
@ -817,10 +818,11 @@ func Test_diff_screen()
|
|||||||
func UnifiedDiffExpr()
|
func UnifiedDiffExpr()
|
||||||
" Prepend some text to check diff type detection
|
" Prepend some text to check diff type detection
|
||||||
call writefile(['warning', ' message'], v:fname_out)
|
call writefile(['warning', ' message'], v:fname_out)
|
||||||
silent exe '!diff -u ' .. v:fname_in .. ' ' .. v:fname_new .. '>>' .. v:fname_out
|
silent exe '!diff -U0 ' .. v:fname_in .. ' ' .. v:fname_new .. '>>' .. v:fname_out
|
||||||
endfunc
|
endfunc
|
||||||
func SetupUnified()
|
func SetupUnified()
|
||||||
set diffexpr=UnifiedDiffExpr()
|
set diffexpr=UnifiedDiffExpr()
|
||||||
|
diffupdate
|
||||||
endfunc
|
endfunc
|
||||||
func StopUnified()
|
func StopUnified()
|
||||||
set diffexpr=
|
set diffexpr=
|
||||||
@ -1218,4 +1220,5 @@ func Test_diff_filler_cursorcolumn()
|
|||||||
call delete('Xtest_diff_cuc')
|
call delete('Xtest_diff_cuc')
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
|
||||||
" vim: shiftwidth=2 sts=2 expandtab
|
" vim: shiftwidth=2 sts=2 expandtab
|
||||||
|
@ -750,6 +750,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
2880,
|
||||||
/**/
|
/**/
|
||||||
2879,
|
2879,
|
||||||
/**/
|
/**/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user