mirror of
https://github.com/neovim/neovim.git
synced 2025-09-18 17:28:23 +00:00
vim patches 7.4.955/974/975/989. #3919
Helped by @Shougo. vim-patch:7.4.955 vim-patch:7.4.974 vim-patch:7.4.975 vim-patch:7.4.989 Port upstream vim patches 955, 974, 975 and 989. Mark patches 964, 968, 970, and 971, and 982 as NA. Update patch list to 1022. patch 7.4.955 Problem: Vim doesn't recognize .pl6 and .pod6 files. Solution: Recognize them as perl6 and pod6. (Mike Eve) patch 7.4.974 Problem: When using :diffsplit the cursor jumps to the first line. Solution: Put the cursor on the line related to where the cursor was before the split. patch 7.4.975 Problem: Using ":sort" on a very big file sometimes causes text to be corrupted. (John Beckett) Solution: Copy the line into a buffer before calling ml_append(). patch 7.4.989 Problem: Leaking memory when hash_add() fails. Coverity error 99126. Solution: When hash_add() fails free the memory. 778 marked as not NA as it will be needed once vim patch 754 is merged Marked as NA: 964 test 87 was deleted 968 tests 86/87 were deleted 970 guarded by: `# if defined(FEAT_GUI_GTK) || defined(PROTO` and is inside a function that no longer exists 971 function table already sorted correctly 982 marked as NA because Neovim tests are only specified in exactly one location
This commit is contained in:

committed by
Justin M. Keyes

parent
8bfb521417
commit
5c87d40acd
@@ -495,10 +495,12 @@ void ex_sort(exarg_T *eap)
|
||||
s = ml_get(nrs[eap->forceit ? count - i - 1 : i].lnum);
|
||||
if (!unique || i == 0
|
||||
|| (sort_ic ? STRICMP(s, sortbuf1) : STRCMP(s, sortbuf1)) != 0) {
|
||||
if (ml_append(lnum++, s, (colnr_T)0, FALSE) == FAIL)
|
||||
// Copy the line into a buffer, it may become invalid in
|
||||
// ml_append(). And it's needed for "unique".
|
||||
STRCPY(sortbuf1, s);
|
||||
if (ml_append(lnum++, sortbuf1, (colnr_T)0, false) == FAIL) {
|
||||
break;
|
||||
if (unique)
|
||||
STRCPY(sortbuf1, s);
|
||||
}
|
||||
}
|
||||
fast_breakcheck();
|
||||
if (got_int)
|
||||
|
Reference in New Issue
Block a user