forked from aniani/vim
patch 8.2.5108: retab test disabled because it hangs on MS-Windows
Problem: Retab test disabled because it hangs on MS-Windows. Solution: Also set got_int at the other place a overlong text is detected.
This commit is contained in:
24
src/indent.c
24
src/indent.c
@@ -1612,6 +1612,20 @@ copy_indent(int size, char_u *src)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/*
|
||||
* Give a "resulting text too long" error and maybe set got_int.
|
||||
*/
|
||||
static void
|
||||
emsg_text_too_long(void)
|
||||
{
|
||||
emsg(_(e_resulting_text_too_long));
|
||||
#ifdef FEAT_EVAL
|
||||
// when not inside a try/catch set got_int to break out of any loop
|
||||
if (trylevel == 0)
|
||||
#endif
|
||||
got_int = TRUE;
|
||||
}
|
||||
|
||||
/*
|
||||
* ":retab".
|
||||
*/
|
||||
@@ -1749,7 +1763,7 @@ ex_retab(exarg_T *eap)
|
||||
new_len = old_len - col + start_col + len + 1;
|
||||
if (new_len <= 0 || new_len >= MAXCOL)
|
||||
{
|
||||
emsg(_(e_resulting_text_too_long));
|
||||
emsg_text_too_long();
|
||||
break;
|
||||
}
|
||||
new_line = alloc(new_len);
|
||||
@@ -1780,13 +1794,7 @@ ex_retab(exarg_T *eap)
|
||||
vcol += chartabsize(ptr + col, (colnr_T)vcol);
|
||||
if (vcol >= MAXCOL)
|
||||
{
|
||||
emsg(_(e_resulting_text_too_long));
|
||||
// when not inside a try/catch set got_int to break out of any
|
||||
// loop
|
||||
#ifdef FEAT_EVAL
|
||||
if (trylevel == 0)
|
||||
#endif
|
||||
got_int = TRUE;
|
||||
emsg_text_too_long();
|
||||
break;
|
||||
}
|
||||
if (has_mbyte)
|
||||
|
Reference in New Issue
Block a user