From c7c2aa1228899ef3fc2705a1a9eecae2679f5d1f Mon Sep 17 00:00:00 2001 From: pkgagent Date: Fri, 13 Mar 2026 11:22:37 +0800 Subject: [PATCH 1/7] fix CVE-2026-28422 --- vim-9.0.2092-CVE-2026-28422.patch | 70 +++++++++++++++++++++++++++++++ vim.spec | 2 + 2 files changed, 72 insertions(+) create mode 100644 vim-9.0.2092-CVE-2026-28422.patch diff --git a/vim-9.0.2092-CVE-2026-28422.patch b/vim-9.0.2092-CVE-2026-28422.patch new file mode 100644 index 0000000..9572151 --- /dev/null +++ b/vim-9.0.2092-CVE-2026-28422.patch @@ -0,0 +1,70 @@ +From 4e5b9e31cb7484ad156fba995fdce3c9b075b5fd Mon Sep 17 00:00:00 2001 +From: Christian Brabandt +Date: Tue, 24 Feb 2026 20:29:20 +0000 +Subject: [PATCH] patch 9.2.0078: [security]: stack-buffer-overflow in + build_stl_str_hl() + +Problem: A stack-buffer-overflow occurs when rendering a statusline + with a multi-byte fill character on a very wide terminal. + The size check in build_stl_str_hl() uses the cell width + rather than the byte length, allowing the subsequent fill + loop to write beyond the 4096-byte MAXPATHL buffer + (ehdgks0627, un3xploitable). +Solution: Update the size check to account for the byte length of + the fill character (using MB_CHAR2LEN). + +Github Advisory: +https://github.com/vim/vim/security/advisories/GHSA-gmqx-prf2-8mwf + +Signed-off-by: Christian Brabandt + +Adapted-by: PkgAgent (modified to adapt to opencloudos-stream) + +--- + src/buffer.c | 5 ++++- + src/version.c | 2 ++ + 2 files changed, 6 insertions(+), 1 deletion(-) + +diff --git a/src/buffer.c b/src/buffer.c +index 70c70c7..0fb2f59 100644 +--- a/src/buffer.c ++++ b/src/buffer.c +@@ -4224,6 +4224,7 @@ build_stl_str_hl( + { + linenr_T lnum; + size_t len; ++ size_t outputlen; // length of out[] used (excluding the NUL) + char_u *p; + char_u *s; + char_u *t; +@@ -5039,6 +5040,7 @@ build_stl_str_hl( + curitem++; + } + *p = NUL; ++ outputlen = (size_t)(p - out); + itemcnt = curitem; + + #ifdef FEAT_EVAL +@@ -5133,7 +5135,8 @@ build_stl_str_hl( + } + width = maxwidth; + } +- else if (width < maxwidth && STRLEN(out) + maxwidth - width + 1 < outlen) ++ else if (width < maxwidth && ++ outputlen + (maxwidth - width) * MB_CHAR2LEN(fillchar) + 1 < outlen) + { + // Find how many separators there are, which we will use when + // figuring out how many groups there are. +diff --git a/src/version.c b/src/version.c +index 0d46024..4fc23b2 100644 +--- a/src/version.c ++++ b/src/version.c +@@ -704,6 +704,8 @@ static char *(features[]) = + + static int included_patches[] = + { /* Add new patch number below this line */ ++/**/ ++ 78, + /**/ + 2092, + /**/ diff --git a/vim.spec b/vim.spec index 1d92138..4565450 100644 --- a/vim.spec +++ b/vim.spec @@ -76,6 +76,8 @@ Patch0020: 0004-patch-9.1.1164-security-code-execution-with-tar.vim-.patch Patch0021: CVE-2025-53905-patch-9.1.1552-security-path-traversal-issue-in-tar..patch # CVE-2025-53906 Patch0022: CVE-2025-53906-patch-9.1.1551-security-path-traversal-issue-in-zip..patch +# CVE-2026-28422 +Patch0023: vim-9.0.2092-CVE-2026-28422.patch Patch3000: vim-7.3-manpage-typo-668894-675480.patch Patch3001: vim-manpagefixes-948566.patch -- Gitee From b185c58a37a8869ab925a53399407373f0463bda Mon Sep 17 00:00:00 2001 From: pkgagent Date: Fri, 13 Mar 2026 12:58:20 +0800 Subject: [PATCH 2/7] fix CVE-2026-28420 --- vim-9.0.2092-CVE-2026-28420.patch | 174 ++++++++++++++++++++++++++++++ vim.spec | 2 + 2 files changed, 176 insertions(+) create mode 100644 vim-9.0.2092-CVE-2026-28420.patch diff --git a/vim-9.0.2092-CVE-2026-28420.patch b/vim-9.0.2092-CVE-2026-28420.patch new file mode 100644 index 0000000..d41a50c --- /dev/null +++ b/vim-9.0.2092-CVE-2026-28420.patch @@ -0,0 +1,174 @@ +From bb6de2105b160e729c340631435cd62f3e69bd32 Mon Sep 17 00:00:00 2001 +From: Christian Brabandt +Date: Mon, 23 Feb 2026 20:29:43 +0000 +Subject: [PATCH] patch 9.2.0076: [security]: buffer-overflow in terminal + handling + +Problem: When processing terminal output with many combining characters + from supplementary planes (4-byte UTF-8), a heap-buffer + overflow occurs. Additionally, the loop iterating over + cell characters can read past the end of the vterm array + (ehdgks0627, un3xploitable). +Solution: Use VTERM_MAX_CHARS_PER_CELL * 4 for ga_grow() to ensure + sufficient space. Add a boundary check to the character + loop to prevent index out-of-bounds access. + +Github Advisory: +https://github.com/vim/vim/security/advisories/GHSA-rvj2-jrf9-2phg + +Signed-off-by: Christian Brabandt + +Adapted-by: PkgAgent (modified to adapt to opencloudos-stream) + +--- + src/terminal.c | 5 + + .../samples/terminal_max_combining_chars.txt | 80 ++++++++++++++++++++ + src/testdir/test_terminal3.vim | 14 ++++ + src/version.c | 2 + + 4 files changed, 99 insertions(+), 2 deletions(-) + +diff --git a/src/terminal.c b/src/terminal.c +index 37cd0f2..0eee0f6 100644 +--- a/src/terminal.c ++++ b/src/terminal.c +@@ -3502,12 +3502,13 @@ handle_pushline(int cols, const VTermScreenCell *cells, void *user) + { + for (col = 0; col < len; col += cells[col].width) + { +- if (ga_grow(&ga, MB_MAXBYTES) == FAIL) ++ if (ga_grow(&ga, VTERM_MAX_CHARS_PER_CELL * 4) == FAIL) + { + ga.ga_len = 0; + break; + } +- for (i = 0; (c = cells[col].chars[i]) > 0 || i == 0; ++i) ++ for (i = 0; i < VTERM_MAX_CHARS_PER_CELL && ++ ((c = cells[col].chars[i]) > 0 || i == 0); ++i) + ga.ga_len += utf_char2bytes(c == NUL ? ' ' : c, + (char_u *)ga.ga_data + ga.ga_len); + cell2cellattr(&cells[col], &p[col]); +diff --git a/src/testdir/samples/terminal_max_combining_chars.txt b/src/testdir/samples/terminal_max_combining_chars.txt +new file mode 100644 +index 00000000000000..a4f508d5476761 +--- /dev/null ++++ b/src/testdir/samples/terminal_max_combining_chars.txt +@@ -0,0 +1,80 @@ ++padding line 000 ++padding line 001 ++padding line 002 ++padding line 003 ++padding line 004 ++padding line 005 ++padding line 006 ++padding line 007 ++padding line 008 ++padding line 009 ++padding line 010 ++padding line 011 ++padding line 012 ++padding line 013 ++padding line 014 ++padding line 015 ++padding line 016 ++padding line 017 ++padding line 018 ++padding line 019 ++padding line 020 ++padding line 021 ++padding line 022 ++padding line 023 ++padding line 024 ++padding line 025 ++padding line 026 ++padding line 027 ++padding line 028 ++padding line 029 ++padding line 030 ++padding line 031 ++padding line 032 ++padding line 033 ++padding line 034 ++padding line 035 ++padding line 036 ++padding line 037 ++padding line 038 ++padding line 039 ++padding line 040 ++padding line 041 ++padding line 042 ++padding line 043 ++padding line 044 ++padding line 045 ++padding line 046 ++padding line 047 ++padding line 048 ++padding line 049 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 ++AAAAAAAAAAAAAAAAAAAAAAAAAAAA𐀀󠄀󠄁󠄂󠄃󠄄 +diff --git a/src/testdir/test_terminal3.vim b/src/testdir/test_terminal3.vim +index 96a9e63..54685d9 100644 +--- a/src/testdir/test_terminal3.vim ++++ b/src/testdir/test_terminal3.vim +@@ -932,4 +932,18 @@ func Test_terminal_term_start_error() + endfunc + + ++func Test_terminal_max_combining_chars() ++ " somehow doesn't work on MS-Windows ++ CheckUnix ++ let cmd = "cat samples/terminal_max_combining_chars.txt\" ++ let buf = Run_shell_in_terminal({'term_rows': 15, 'term_cols': 35}) ++ call TermWait(buf) ++ call term_sendkeys(buf, cmd) ++ " last char is a space with many combining chars ++ call WaitForAssert({-> assert_match("AAAAAAAAAAAAAAAAAAAAAAAAAAAA.", term_getline(buf, 14))}) ++ ++ call term_sendkeys(buf, "exit\r") ++ exe buf . "bwipe!" ++endfunc ++ + " vim: shiftwidth=2 sts=2 expandtab +diff --git a/src/version.c b/src/version.c +index 4fc23b2..381ca3b 100644 +--- a/src/version.c ++++ b/src/version.c +@@ -704,6 +704,8 @@ static char *(features[]) = + + static int included_patches[] = + { /* Add new patch number below this line */ ++/**/ ++ 76, + /**/ + 78, + /**/ +-- +2.43.0 + diff --git a/vim.spec b/vim.spec index 4565450..a035aef 100644 --- a/vim.spec +++ b/vim.spec @@ -78,6 +78,8 @@ Patch0021: CVE-2025-53905-patch-9.1.1552-security-path-traversal-issue-in-tar..p Patch0022: CVE-2025-53906-patch-9.1.1551-security-path-traversal-issue-in-zip..patch # CVE-2026-28422 Patch0023: vim-9.0.2092-CVE-2026-28422.patch +# CVE-2026-28420 +Patch0024: vim-9.0.2092-CVE-2026-28420.patch Patch3000: vim-7.3-manpage-typo-668894-675480.patch Patch3001: vim-manpagefixes-948566.patch -- Gitee From 8dbbd5bf118a232e2f80606f2899335c5125f72e Mon Sep 17 00:00:00 2001 From: pkgagent Date: Fri, 13 Mar 2026 13:25:47 +0800 Subject: [PATCH 3/7] fix CVE-2026-28419 --- vim-9.0.2092-CVE-2026-28419.patch | 81 +++++++++++++++++++++++++++++++ vim.spec | 2 + 2 files changed, 83 insertions(+) create mode 100644 vim-9.0.2092-CVE-2026-28419.patch diff --git a/vim-9.0.2092-CVE-2026-28419.patch b/vim-9.0.2092-CVE-2026-28419.patch new file mode 100644 index 0000000..57aeac8 --- /dev/null +++ b/vim-9.0.2092-CVE-2026-28419.patch @@ -0,0 +1,81 @@ +From 9b7dfa2948c9e1e5e32a5812812d580c7879f4a0 Mon Sep 17 00:00:00 2001 +From: Christian Brabandt +Date: Mon, 23 Feb 2026 19:35:25 +0000 +Subject: [PATCH] patch 9.2.0075: [security]: Buffer underflow with emacs tag + file + +Problem: When parsing a malformed Emacs-style tags file, a 1-byte + heap-buffer-underflow read occurs if the 0x7f delimiter + appears at the very beginning of a line. This happens + because the code attempts to scan backward for a tag + name from the delimiter without checking if space exists. + (ehdgks0627, un3xploitable) +Solution: Add a check to ensure the delimiter (p_7f) is not at the + start of the buffer (lbuf) before attempting to isolate + the tag name. + +GitHub Advisory: +https://github.com/vim/vim/security/advisories/GHSA-xcc8-r6c5-hvwv + +Signed-off-by: Christian Brabandt + +Adapted-by: PkgAgent (modified to adapt to opencloudos-stream) + +--- + src/tag.c | 3 +++ + src/testdir/test_taglist.vim | 16 ++++++++++++++++ + src/version.c | 2 ++ + 3 files changed, 21 insertions(+) + +diff --git a/src/tag.c b/src/tag.c +index 8003156..b7e0481 100644 +--- a/src/tag.c ++++ b/src/tag.c +@@ -2016,6 +2016,9 @@ etag_fail: + } + else // second format: isolate tagname + { ++ if (p_7f == lbuf) ++ goto etag_fail; ++ + // find end of tagname + for (p = p_7f - 1; !vim_iswordc(*p); --p) + if (p == lbuf) +diff --git a/src/testdir/test_taglist.vim b/src/testdir/test_taglist.vim +index 39e78bc..03f5a85 100644 +--- a/src/testdir/test_taglist.vim ++++ b/src/testdir/test_taglist.vim +@@ -260,4 +260,20 @@ func Test_tag_complete_with_overlong_line() + set tags& + endfunc + ++" This used to crash Vim due to a heap-buffer-underflow ++func Test_emacs_tagfile_underflow() ++ CheckFeature emacs_tags ++ " The sequence from the crash artifact: ++ let lines = [ ++ \ "\x0c\xff\xffT\x19\x8a", ++ \ "\x19\x19\x0dtags\x19\x19\x19\x00\xff\xff\xff", ++ \ "\x7f3\x0c" ++ \ ] ++ call writefile(lines, 'Xtags', 'D') ++ set tags=Xtags ++ call assert_fails(':tag a', 'E431:') ++ ++ set tags& ++endfunc ++ + " vim: shiftwidth=2 sts=2 expandtab +diff --git a/src/version.c b/src/version.c +index 381ca3b..33ce541 100644 +--- a/src/version.c ++++ b/src/version.c +@@ -704,6 +704,8 @@ static char *(features[]) = + + static int included_patches[] = + { /* Add new patch number below this line */ ++/**/ ++ 75, + /**/ + 76, + /**/ diff --git a/vim.spec b/vim.spec index a035aef..62eb9fe 100644 --- a/vim.spec +++ b/vim.spec @@ -80,6 +80,8 @@ Patch0022: CVE-2025-53906-patch-9.1.1551-security-path-traversal-issue-in-zip..p Patch0023: vim-9.0.2092-CVE-2026-28422.patch # CVE-2026-28420 Patch0024: vim-9.0.2092-CVE-2026-28420.patch +# CVE-2026-28419 +Patch0025: vim-9.0.2092-CVE-2026-28419.patch Patch3000: vim-7.3-manpage-typo-668894-675480.patch Patch3001: vim-manpagefixes-948566.patch -- Gitee From 3d0e3c18cbe5b0f15b3e6534036e1bd8025aee5b Mon Sep 17 00:00:00 2001 From: pkgagent Date: Fri, 13 Mar 2026 13:51:34 +0800 Subject: [PATCH 4/7] fix CVE-2026-28418 --- vim-9.0.2092-CVE-2026-28418.patch | 74 +++++++++++++++++++++++++++++++ vim.spec | 2 + 2 files changed, 76 insertions(+) create mode 100644 vim-9.0.2092-CVE-2026-28418.patch diff --git a/vim-9.0.2092-CVE-2026-28418.patch b/vim-9.0.2092-CVE-2026-28418.patch new file mode 100644 index 0000000..4e54fa1 --- /dev/null +++ b/vim-9.0.2092-CVE-2026-28418.patch @@ -0,0 +1,74 @@ +From f6a7f469a9c0d09e84cd6cb46c3a9e76f684da2d Mon Sep 17 00:00:00 2001 +From: Christian Brabandt +Date: Mon, 23 Feb 2026 18:30:11 +0000 +Subject: [PATCH] patch 9.2.0074: [security]: Crash with overlong emacs tag + file + +Problem: Crash with overlong emacs tag file, because of an OOB buffer + read (ehdgks0627, un3xploitable) +Solution: Check for end of buffer and return early. + +Github Advisory: +https://github.com/vim/vim/security/advisories/GHSA-h4mf-vg97-hj8j + +Signed-off-by: Christian Brabandt + +Adapted-by: PkgAgent (modified to adapt to opencloudos-stream) + +--- + src/tag.c | 3 +++ + src/testdir/test_taglist.vim | 15 +++++++++++++++ + src/version.c | 2 ++ + 3 files changed, 20 insertions(+) + +diff --git a/src/tag.c b/src/tag.c +index b7e0481..f23bf17 100644 +--- a/src/tag.c ++++ b/src/tag.c +@@ -1898,6 +1898,9 @@ emacs_tags_new_filename(findtags_state_T *st) + + for (p = st->ebuf; *p && *p != ','; p++) + ; ++ // invalid ++ if (*p == NUL) ++ return; + *p = NUL; + + // check for an included tags file. +diff --git a/src/testdir/test_taglist.vim b/src/testdir/test_taglist.vim +index 03f5a85..aa9632f 100644 +--- a/src/testdir/test_taglist.vim ++++ b/src/testdir/test_taglist.vim +@@ -276,4 +276,19 @@ func Test_emacs_tagfile_underflow() + set tags& + endfunc + ++" This used to crash Vim ++func Test_evil_emacs_tagfile() ++ CheckFeature emacs_tags ++ let longline = repeat('a', 515) ++ call writefile([ ++ \ "\x0c", ++ \ longline ++ \ ], 'Xtags', 'D') ++ set tags=Xtags ++ ++ call assert_fails(':tag a', 'E426:') ++ ++ set tags& ++endfunc ++ + " vim: shiftwidth=2 sts=2 expandtab +diff --git a/src/version.c b/src/version.c +index 33ce541..18b9a8f 100644 +--- a/src/version.c ++++ b/src/version.c +@@ -704,6 +704,8 @@ static char *(features[]) = + + static int included_patches[] = + { /* Add new patch number below this line */ ++/**/ ++ 74, + /**/ + 75, + /**/ diff --git a/vim.spec b/vim.spec index 62eb9fe..1aa093c 100644 --- a/vim.spec +++ b/vim.spec @@ -82,6 +82,8 @@ Patch0023: vim-9.0.2092-CVE-2026-28422.patch Patch0024: vim-9.0.2092-CVE-2026-28420.patch # CVE-2026-28419 Patch0025: vim-9.0.2092-CVE-2026-28419.patch +# CVE-2026-28418 +Patch0026: vim-9.0.2092-CVE-2026-28418.patch Patch3000: vim-7.3-manpage-typo-668894-675480.patch Patch3001: vim-manpagefixes-948566.patch -- Gitee From c03a84b81edac32ab685845c866ef5708815ab3c Mon Sep 17 00:00:00 2001 From: pkgagent Date: Fri, 13 Mar 2026 14:32:22 +0800 Subject: [PATCH 5/7] fix CVE-2026-28417 --- vim-9.0.2092-CVE-2026-28417.patch | 105 ++++++++++++++++++++++++++++++ vim.spec | 2 + 2 files changed, 107 insertions(+) create mode 100644 vim-9.0.2092-CVE-2026-28417.patch diff --git a/vim-9.0.2092-CVE-2026-28417.patch b/vim-9.0.2092-CVE-2026-28417.patch new file mode 100644 index 0000000..7e651e9 --- /dev/null +++ b/vim-9.0.2092-CVE-2026-28417.patch @@ -0,0 +1,105 @@ +From 79348dbbc09332130f4c86045e1541d68514fcc1 Mon Sep 17 00:00:00 2001 +From: Christian Brabandt +Date: Sun, 22 Feb 2026 21:24:48 +0000 +Subject: [PATCH] patch 9.2.0073: [security]: possible command injection using + netrw + +Problem: [security]: Insufficient validation of hostname and port in + netrw URIs allows command injection via shell metacharacters + (ehdgks0627, un3xploitable). +Solution: Implement stricter RFC1123 hostname and IP validation. + Use shellescape() for the provided hostname and port. + +Github Advisory: +https://github.com/vim/vim/security/advisories/GHSA-m3xh-9434-g336 + +Signed-off-by: Christian Brabandt + +Adapted-by: PkgAgent (modified to adapt to opencloudos-stream) + +--- + runtime/autoload/netrw.vim | 42 ++++++++++++++++++++++++++++++++++++------ + src/version.c | 2 ++ + 2 files changed, 38 insertions(+), 6 deletions(-) + +diff --git a/runtime/autoload/netrw.vim b/runtime/autoload/netrw.vim +index d2df846..5058a1b 100644 +--- a/runtime/autoload/netrw.vim ++++ b/runtime/autoload/netrw.vim +@@ -11839,20 +11839,45 @@ fun! s:GetTempfile(fname) + return tmpfile + endfun + ++" --------------------------------------------------------------------- ++" s:NetrwValidateHostname: Validate that the hostname is valid {{{2 ++" Input: ++" hostname, may include an optional username, e.g. user@hostname ++" allow a alphanumeric hostname or an IPv(4/6) address ++" Output: ++" true if g:netrw_machine is valid according to RFC1123 #Section 2 ++fun! s:NetrwValidateHostname(hostname) ++ " Username: ++ let user_pat = '\%([a-zA-Z0-9._-]\+@\)\?' ++ " Hostname: 1-64 chars, alphanumeric/dots/hyphens. ++ " No underscores. No leading/trailing dots/hyphens. ++ let host_pat = '[a-zA-Z0-9]\%([-a-zA-Z0-9.]\{,62\}[a-zA-Z0-9]\)\?$' ++ ++ " IPv4: 1-3 digits separated by dots ++ let ipv4_pat = '\%(\d\{1,3\}\\.\)\{3\}\d\{1,3\}$' ++ ++ " IPv6: Hex, colons, and optional brackets ++ let ipv6_pat = '\[\?\%([a-fA-F0-9:]\{2,\}\)\+\]\?$' ++ ++ return a:hostname =~? '^'.user_pat.host_pat || ++ \ a:hostname =~? '^'.user_pat.ipv4_pat || ++ \ a:hostname =~? '^'.user_pat.ipv6_pat ++endfun ++ + " --------------------------------------------------------------------- + " s:MakeSshCmd: transforms input command using USEPORT HOSTNAME into {{{2 + " a correct command for use with a system() call + fun! s:MakeSshCmd(sshcmd) + " call Dfunc("s:MakeSshCmd(sshcmd<".a:sshcmd.">) user<".s:user."> machine<".s:machine.">") +- if s:user == "" +- let sshcmd = substitute(a:sshcmd,'\',s:machine,'') +- else +- let sshcmd = substitute(a:sshcmd,'\',s:user."@".s:machine,'') ++ let machine = shellescape(s:machine, 1) ++ if s:user != '' ++ let machine = shellescape(s:user, 1).'@'.machine + endif ++ let sshcmd = substitute(a:sshcmd,'\',machine,'') + if exists("g:netrw_port") && g:netrw_port != "" +- let sshcmd= substitute(sshcmd,"USEPORT",g:netrw_sshport.' '.g:netrw_port,'') ++ let sshcmd= substitute(sshcmd,"USEPORT",g:netrw_sshport.' '.shellescape(g:netrw_port,1),'') + elseif exists("s:port") && s:port != "" +- let sshcmd= substitute(sshcmd,"USEPORT",g:netrw_sshport.' '.s:port,'') ++ let sshcmd= substitute(sshcmd,"USEPORT",g:netrw_sshport.' '.shellescape(s:port,1),'') + else + let sshcmd= substitute(sshcmd,"USEPORT ",'','') + endif +@@ -12332,6 +12357,11 @@ fun! s:RemotePathAnalysis(dirname) + let s:user = s:user.'@'.substitute(s:machine,dirpat,'\1','') + let s:machine = substitute(s:machine,dirpat,'\2','') + endif ++ " Validate hostname ++ if !s:NetrwValidateHostname(s:machine) ++ call netrw#ErrorMsg(s:ERROR,"Rejecting invalid hostname",106) ++ return ++ endif + + " call Decho("set up s:method <".s:method .">",'~'.expand("")) + " call Decho("set up s:user <".s:user .">",'~'.expand("")) +diff --git a/src/version.c b/src/version.c +index 18b9a8f..28992d3 100644 +--- a/src/version.c ++++ b/src/version.c +@@ -704,6 +704,8 @@ static char *(features[]) = + + static int included_patches[] = + { /* Add new patch number below this line */ ++/**/ ++ 73, + /**/ + 74, + /**/ diff --git a/vim.spec b/vim.spec index 1aa093c..d1ba8b3 100644 --- a/vim.spec +++ b/vim.spec @@ -84,6 +84,8 @@ Patch0024: vim-9.0.2092-CVE-2026-28420.patch Patch0025: vim-9.0.2092-CVE-2026-28419.patch # CVE-2026-28418 Patch0026: vim-9.0.2092-CVE-2026-28418.patch +# CVE-2026-28417 +Patch0027: vim-9.0.2092-CVE-2026-28417.patch Patch3000: vim-7.3-manpage-typo-668894-675480.patch Patch3001: vim-manpagefixes-948566.patch -- Gitee From 84b1c4ee9fafce50f1c7772cd488e8f15e1465a4 Mon Sep 17 00:00:00 2001 From: pkgagent Date: Fri, 13 Mar 2026 18:30:51 +0800 Subject: [PATCH 6/7] fix CVE-2026-25749 --- vim-9.0.2092-CVE-2025-50950.patch | 31479 ++++++++++++++++++++++++++++ vim.spec | 2 + 2 files changed, 31481 insertions(+) create mode 100644 vim-9.0.2092-CVE-2025-50950.patch diff --git a/vim-9.0.2092-CVE-2025-50950.patch b/vim-9.0.2092-CVE-2025-50950.patch new file mode 100644 index 0000000..5a9660f --- /dev/null +++ b/vim-9.0.2092-CVE-2025-50950.patch @@ -0,0 +1,31479 @@ +From 0714b15940b245108e6e9d7aa2260dd849a26fa9 Mon Sep 17 00:00:00 2001 +From: Christian Brabandt +Date: Thu, 5 Feb 2026 18:51:54 +0000 +Subject: [PATCH] patch 9.1.2132: [security]: buffer-overflow in 'helpfile' + option handling + +Problem: [security]: buffer-overflow in 'helpfile' option handling by + using strcpy without bound checks (Rahul Hoysala) +Solution: Limit strncpy to the length of the buffer (MAXPATHL) + +Github Advisory: +https://github.com/vim/vim/security/advisories/GHSA-5w93-4g67-mm43 + +Signed-off-by: Christian Brabandt + +Adapted-by: PkgAgent (modified to adapt to opencloudos-stream) + +--- + runtime/doc/version9.txt |31402 --------------------------------------------- + src/tag.c | 2 + src/testdir/test_help.vim | 9 + src/version.c | 2 + 4 files changed, 13 insertions(+), 31402 deletions(-) + +diff --git a/runtime/doc/version9.txt b/runtime/doc/version9.txt +index 09d6b3b..9df62e1 100644 +--- a/runtime/doc/version9.txt ++++ b/runtime/doc/version9.txt +@@ -360,31404 +360,4 @@ Support for re-evaluating the 'statusline' expression as a statusline format + string (%{% expr %}) + + Add |zp| and |zP| to paste in block mode without adding trailing white space. +-Add |zy| to yank without trailing white space in block mode. +- +-Add the 'P' command in visual mode to paste text in Visual mode without +-yanking the deleted text to the unnamed register. |put-Visual-mode| +- +-Add \%.l, \%<.l and \%>.l atoms to match the line the cursor is currently on. +-See |/\%l| for more information. +- +-Add "list" to 'breakindentopt' to add additional indent for lines that match +-a numbered or bulleted list. Add "column" to 'breakindentopt' to indent +-soft-wrapped lines at a specific column. +- +-Add the |hl-CursorLineSign| and |hl-CursorLineFold| default highlight groups to +-adjust sign highlighting for 'cursorline'. +- +-Add the |hl-CurSearch| default highlight group for the current search match. +- +-Add support for logging on Vim startup (|--log|). +- +-Add support for customizing the quickfix buffer contents using +-'quickfixtextfunc'. Support for the "note" error type (%t) in |errorformat|. +-Add support for parsing the end line number (%e) and end column number (%k) +-using 'errorformat'. +- +-Support truncating the tag stack using |settagstack()|. +- +-Display every option in a separate line when "!" is used with |:set|. +- +-Add "nostop" to 'backspace' to allow backspacing over the start of insert for +-|CTRL-W| and |CTRL-U| also. +- +-Sync the undo file if 'fsync' is set. +- +-Support excluding the 'runtimepath' and 'packpath' options from a session file +-using "skiprtp" in 'sessionoptions'. +- +-Support for getting the number of lines (line count) in a buffer using +-|getbufinfo()|. +- +-Support |filter()| and |map()| for blob and string types. +- +-Support for using a multi-byte character for the tag kind. |tags-file-format| +- +-Add support for checking whether a function name is valid using |exists()|. +- +-Update xdiff to version 2.33. Update libvterm to revision 789. +- +-Support 'trim' for Python/Lua/Perl/Tcl/Ruby/MzScheme interface heredoc. +- +-Add the |t_AU| and |t_8u| termcap codes for underline and undercurl. Add the +-t_fd and t_fe termcap codes for detecting focus events. +- +-Support for indenting C pragmas like normal code. (|cino-P|) +- +-Add support for defining the syntax fold level. (|:syn-foldlevel|) +- +-Add support for using \<*xxx> in a string to prepend a modifier to a +-character. (|expr-quote|) +- +-Add support trimming characters at the beginning or end of a string using +-|trim()|. +- +-Make ":verbose pwd" show the scope of the directory. |:pwd-verbose| +- +-Add the "0o" notation for specifying octal numbers. |scriptversion-4| +- +-Support for changing to the previous tab-local and window-local directories +-using the "tcd -" and "lcd -" commands. (|:tcd-| and |:lcd-|) +- +-Add support for skipping an expression using |search()|. +- +-Add support for sorting the directory contents returned by the |readdir()| +-and |readdirex()| functions by case. +- +-Add support for executing (|:@|) a register containing line continuation. +- +-Lua support: +-- Call Vim functions from Lua (vim.call() and vim.fn()). +-- Convert a Lua function and a closure to a Vim funcref so that it can be +- accessed in a Vim script (|lua-funcref|). +-- Not backwards compatible: Make Lua arrays one based. +-- Add support for using table.insert() and table.remove() functions with Vim +- lists. +-- Support for running multiple Ex-mode commands using vim.command(). +-- Add vim.lua_version to get the Lua version. +-- Add support for accessing Vim namespace dictionaries from Lua +- (|lua-vim-variables|). +- +-Support for new UTF-8 characters from Unicode release 13. +- +-Support for using a command block (|:command-repl|) when defining a |:command| +-or an |:autocmd|. +- +-Support for using |:z!| to use the Vim display height instead of the current +-window height. +- +-Support for deleting a buffer-local command using ":delcommand -buffer {cmd}". +- +-When formatting a // comment after a statement, find the start of the line +-comment, insert the comment leader and indent the comment properly (|fo-/|). +- +-Add the "numhl" argument to `:sign define` to use a separate highlight group +-for the line number on a line where a sign is placed. |:sign-define| +- +-When $SHELL ends in "nologin" or "false", start Vim in restricted mode. +- +-TermDebug enhancements: +-- Support for showing the disassembled code in a separate window. +-- Support for the GDB until command. +-- Use a separate group for the signs. +- +-xxd: Support for showing offset as a decimal number (-d). +- +-The C omni-complete plugin (|ft-c-omni|), the file type detection script +-(ft.vim) and the syntax menu generation script (makemenu.vim) have been +-rewritten using the Vim9 script syntax. +- +-A large number of tests have been added to verify the Vim functionality. Most +-of the old style tests have been converted to new style tests using the new +-style assert_* functions. +- +-Many Coverity static analysis warnings have been fixed. +- +-============================================================================== +-COMPILE TIME CHANGES *compile-changes-9* +- +-The following features are now enabled in all the builds: +- |+cindent| +- |+jumplist| +- |+lispindent| +- |+num64| +- |+smartindent| +- |+tag_binary| +- |+title| +- +-The following features have been removed. They are either obsolete or didn't +-work properly: +- - Athena and neXTaw GUI support (use Motif instead) +- - EBCDIC support +- - Atari MiNT and BeOS +- - Mac Carbon GUI (use MacVim instead) +- +-The rgb.txt file is no longer included, use colors/lists/default.vim instead. +- +-Several large source files were split, mainly to make it easier to inspect +-code coverage information. Source files have also been refactored for +-maintainability. +- +-Support for building Vim with Mingw64 clang compiler on MS-Windows. +- +-Support for building Vim with Python 3.10, Lua 5.4.4, Perl 5.34 and +-Ruby 3.1.0. +- +-============================================================================== +-PATCHES *patches-9* *bug-fixes-9* +- *patches-after-8.2* +- +-The list of patches that got included since 8.2.0. This includes all the new +-features, but does not include runtime file changes (syntax, indent, help, +-etc.) +- +-Patch 8.2.0001 +-Problem: #endif comments do not reflect corresponding #ifdef. +-Solution: Update the comments. (Rene Nyffenegger, closes #5351) +-Files: src/ui.c +- +-Patch 8.2.0002 +-Problem: "dj" only deletes first line of closed fold. +-Solution: Adjust last line of operator for linewise motion. (closes #5354) +-Files: src/ops.c, src/testdir/test_fold.vim +- +-Patch 8.2.0003 +-Problem: Build file dependencies are incomplete. +-Solution: Fix the dependencies. (Ken Takata, closes #5356) +-Files: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Make_vms.mms, +- src/Makefile +- +-Patch 8.2.0004 +-Problem: Get E685 and E931 if buffer reload is interrupted. +-Solution: Do not abort deleting a dummy buffer. (closes #5361) +-Files: src/buffer.c, src/proto/buffer.pro, src/testdir/test_trycatch.vim, +- src/ex_cmds.c, src/ex_getln.c, src/misc2.c, src/quickfix.c, +- src/window.c, src/vim.h +- +-Patch 8.2.0005 +-Problem: Duplication in version info. +-Solution: Use preprocessor string concatenation. (Ken Takata, closes #5357) +-Files: src/version.h +- +-Patch 8.2.0006 +-Problem: Test using long file name may fail. (Vladimir Lomov) +-Solution: Limit the name length. (Christian Brabandt, closes #5358) +-Files: src/testdir/test_display.vim +- +-Patch 8.2.0007 +-Problem: Popup menu positioned wrong with folding in two tabs. +-Solution: Update the cursor line height. (closes #5353) +-Files: src/move.c, src/proto/move.pro, src/popupmenu.c, +- src/testdir/test_ins_complete.vim, +- src/testdir/dumps/Test_pum_with_folds_two_tabs.dump +- +-Patch 8.2.0008 +-Problem: Test72 is old style. +-Solution: Convert to new style test. (Yegappan Lakshmanan, closes #5362) +-Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms, +- src/testdir/test72.in, src/testdir/test72.ok, +- src/testdir/test_undo.vim +- +-Patch 8.2.0009 +-Problem: VMS: terminal version doesn't build. +-Solution: Move MIN definition. Adjust #ifdefs. (Zoltan Arpadffy) +-Files: src/bufwrite.c, src/fileio.c, src/ui.c, src/xxd/Make_vms.mms +- +-Patch 8.2.0010 +-Problem: Test64 is old style. +-Solution: Convert to new style test. (Yegappan Lakshmanan, closes #5363) +-Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms, +- src/testdir/test64.in, src/testdir/test64.ok, +- src/testdir/test95.in, src/testdir/test_regexp_latin.vim +- +-Patch 8.2.0011 +-Problem: Screen updating wrong when opening preview window. +-Solution: Redraw the window when the preview window opens. +-Files: src/popupmenu.c, src/testdir/test_ins_complete.vim, +- src/testdir/dumps/Test_pum_with_preview_win.dump +- +-Patch 8.2.0012 +-Problem: Some undo functionality is not tested. +-Solution: Add a few more test cases. (Dominique PellĂ©, closes #5364) +-Files: src/testdir/test_undo.vim +- +-Patch 8.2.0013 +-Problem: Not using a typedef for condstack. +-Solution: Add a typedef. +-Files: src/structs.h, src/ex_docmd.c, src/ex_eval.c, src/userfunc.c, +- src/ex_cmds.h, src/proto/ex_eval.pro +- +-Patch 8.2.0014 +-Problem: Test69 and test95 are old style. +-Solution: Convert to new style tests. (Yegappan Lakshmanan, closes #5365) +-Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms, +- src/testdir/test69.in, src/testdir/test69.ok, +- src/testdir/test95.in, src/testdir/test95.ok, +- src/testdir/test_regexp_utf8.vim, src/testdir/test_textformat.vim +- +-Patch 8.2.0015 +-Problem: Not all modeline variants are tested. +-Solution: Add modeline tests. (Dominique PellĂ©, closes #5369) +-Files: src/testdir/test_modeline.vim +- +-Patch 8.2.0016 +-Problem: Test name used twice, option not restored properly. +-Solution: Rename function, restore option with "&". +-Files: src/testdir/test_textformat.vim +- +-Patch 8.2.0017 +-Problem: OS/2 and MS-DOS are still mentioned, even though support was +- removed long ago. +-Solution: Update documentation. (Yegappan Lakshmanan, closes #5368) +-Files: runtime/doc/autocmd.txt, runtime/doc/change.txt, +- runtime/doc/cmdline.txt, runtime/doc/editing.txt, +- runtime/doc/eval.txt, runtime/doc/gui.txt, runtime/doc/insert.txt, +- runtime/doc/options.txt, runtime/doc/print.txt, +- runtime/doc/quickfix.txt, runtime/doc/repeat.txt, +- runtime/doc/starting.txt, runtime/doc/usr_01.txt, +- runtime/doc/usr_05.txt, runtime/doc/usr_41.txt, +- runtime/doc/vi_diff.txt, runtime/gvimrc_example.vim, +- runtime/tools/README.txt, runtime/vimrc_example.vim, src/feature.h +- +-Patch 8.2.0018 +-Problem: :join does not add white space where it should. (Zdenek Dohnal) +-Solution: Handle joining multiple lines properly. +-Files: src/ops.c, src/testdir/test_join.vim +- +-Patch 8.2.0019 +-Problem: Cannot get number of lines of another buffer. +-Solution: Add "linecount" to getbufinfo(). (Yasuhiro Matsumoto, +- closes #5370) +-Files: src/evalbuffer.c, src/testdir/test_bufwintabinfo.vim, +- runtime/doc/eval.txt +- +-Patch 8.2.0020 +-Problem: Mouse clicks in the command line not tested. +-Solution: Add tests. (Dominique PellĂ©, closes #5366) +-Files: src/testdir/test_termcodes.vim +- +-Patch 8.2.0021 +-Problem: Timer test fails too often on Travis with macOS. +-Solution: Be less strict with the time. +-Files: src/testdir/test_timers.vim +- +-Patch 8.2.0022 +-Problem: Click in popup window doesn't close it in the GUI. (Sergey Vlasov) +-Solution: When processing the selection also send a button release event. +- (closes #5367) +-Files: src/gui.c +- +-Patch 8.2.0023 +-Problem: Command line editing not sufficiently tested. +-Solution: Add more tests. (Dominique PellĂ©, closes #5374) +-Files: src/testdir/Make_all.mak, src/testdir/test_alot.vim, +- src/testdir/test_cmdline.vim, src/testdir/test_ex_mode.vim +- +-Patch 8.2.0024 +-Problem: Filetype Rego not recognized. +-Solution: Add *.rego. (Matt Dunford, closes #5376) +-Files: runtime/filetype.vim, src/testdir/test_filetype.vim +- +-Patch 8.2.0025 +-Problem: Repeated word in comment. +-Solution: Remove one. (Rene Nyffenegger, closes #5384) +-Files: src/structs.h +- +-Patch 8.2.0026 +-Problem: Still some /* */ comments. +-Solution: Convert to // comments. +-Files: src/message.c, src/message_test.c, src/misc1.c, src/misc2.c, +- src/move.c +- +-Patch 8.2.0027 +-Problem: Still some /* */ comments. +-Solution: Convert to // comments. +-Files: src/iid_ole.c, src/indent.c, src/insexpand.c, src/iscygpty.c, +- src/version.c +- +-Patch 8.2.0028 +-Problem: Searchpairpos() is not tested. +-Solution: Add tests. Also improve searchpair() testing. (Dominique PellĂ©, +- closes #5388) +-Files: src/testdir/test_search.vim +- +-Patch 8.2.0029 +-Problem: MS-Windows: crash with empty job command. +-Solution: Check for NULL result. (Yasuhiro Matsumoto, closes #5390) +-Files: src/channel.c, src/testdir/test_channel.vim +- +-Patch 8.2.0030 +-Problem: "gF" does not work on output of "verbose command". +-Solution: Recognize " line " and translations. (closes #5391) +-Files: src/globals.h, src/eval.c, src/findfile.c, src/testdir/test_gf.vim +- +-Patch 8.2.0031 (after 8.2.0029) +-Problem: MS-Windows: test for empty job fails +-Solution: Check for error message, make it also fail on Unix. +-Files: src/channel.c, src/testdir/test_channel.vim +- +-Patch 8.2.0032 (after 8.2.0031) +-Problem: MS-Windows: test for blank job fails +-Solution: Check before escaping. +-Files: src/channel.c, src/testdir/test_channel.vim +- +-Patch 8.2.0033 +-Problem: Crash when make_extmatch() runs out of memory. +-Solution: Check for NULL. (Dominique PellĂ©, closes #5392) +-Files: src/regexp_bt.c, src/regexp_nfa.c +- +-Patch 8.2.0034 +-Problem: Missing check for out of memory. +-Solution: Check for NULL after vim_strsave(). (Dominique PellĂ©, +- closes #5393) +-Files: src/filepath.c +- +-Patch 8.2.0035 +-Problem: Saving and restoring called_emsg is clumsy. +-Solution: Count the number of error messages. +-Files: src/message.c, src/buffer.c, src/channel.c, src/drawscreen.c, +- src/ex_cmds2.c, src/gui.c, src/highlight.c, src/main.c, +- src/regexp.c, src/search.c, src/testing.c, src/globals.h +- +-Patch 8.2.0036 +-Problem: Not enough test coverage for match functions. +-Solution: Add a few more test cases. (Dominique PellĂ©, closes #5394) +- Add error number. +-Files: src/testdir/test_match.vim +- +-Patch 8.2.0037 +-Problem: Missing renamed message. +-Solution: Now really add the error number. +-Files: src/highlight.c +- +-Patch 8.2.0038 +-Problem: Spell suggestions insufficiently tested. +-Solution: Add spell suggestion tests. (Dominique PellĂ©, closes #5398) +-Files: src/testdir/test_spell.vim +- +-Patch 8.2.0039 +-Problem: Memory access error when "z=" has no suggestions. +-Solution: Check for negative index. +-Files: src/testdir/test_spell.vim, src/spellsuggest.c +- +-Patch 8.2.0040 +-Problem: Timers test is still flaky on Travis for Mac. +-Solution: Run separately instead of as part of test_alot. +-Files: src/testdir/Make_all.mak, src/testdir/test_alot.vim +- +-Patch 8.2.0041 +-Problem: Leaking memory when selecting spell suggestion. +-Solution: Free previous value at the right time. +-Files: src/spellsuggest.c +- +-Patch 8.2.0042 +-Problem: Clearing funccal values twice. +-Solution: Remove clearing individual fields. +-Files: src/userfunc.c +- +-Patch 8.2.0043 +-Problem: Timers test is still flaky on Travis for Mac. +-Solution: Increase maximum expected time. +-Files: src/testdir/test_timers.vim +- +-Patch 8.2.0044 +-Problem: Expression type is used inconsistently. +-Solution: Add "ETYPE_IS" and "ETYPE_ISNOT" as separate enum values. Rename +- "TYPE_" to "ETYPE_" to avoid confusion. +-Files: src/structs.h, src/eval.c, src/proto/eval.pro, src/debugger.c +- +-Patch 8.2.0045 (after 8.2.0044) +-Problem: Script test fails. +-Solution: For numbers "is" and "isnot" work like "==" and "!=". +-Files: src/eval.c +- +-Patch 8.2.0046 +-Problem: Tests for spell suggestions are slow. +-Solution: Use shorter words. Test with latin1 and utf-8 to cover more code. +- (Dominique PellĂ©, closes #5399) +-Files: src/testdir/test_spell.vim +- +-Patch 8.2.0047 +-Problem: Cannot skip tests for specific MS-Windows platform. +-Solution: Add windowsversion(). +-Files: src/os_win32.c, src/globals.h, src/evalfunc.c, +- runtime/doc/eval.txt, src/testdir/gen_opt_test.vim, +- src/testdir/test_options.vim +- +-Patch 8.2.0048 +-Problem: Another timers test is flaky on Travis for Mac. +-Solution: Increase maximum expected time. +-Files: src/testdir/test_timers.vim +- +-Patch 8.2.0049 +-Problem: Command line completion not fully tested. +-Solution: Add more test cases. Make help sorting stable. (Dominique PellĂ©, +- closes #5402) +-Files: src/ex_cmds.c, src/testdir/test_cd.vim, +- src/testdir/test_cmdline.vim, src/testdir/test_help.vim, +- src/testdir/test_menu.vim, src/testdir/test_options.vim, +- src/testdir/test_syntax.vim +- +-Patch 8.2.0050 +-Problem: After deleting a file mark it is still in viminfo. +-Solution: When a file mark was deleted more recently than the mark in the +- merged viminfo file was updated, do not store the mark. (Pavol +- Juhas, closes #5401, closes #1339) +-Files: src/mark.c, src/testdir/test_marks.vim, +- src/testdir/test_viminfo.vim, src/viminfo.c +- +-Patch 8.2.0051 (after 8.2.0049) +-Problem: Command line completion test skipped. (Christian Brabandt) +-Solution: Invert condition. +-Files: src/testdir/test_cmdline.vim +- +-Patch 8.2.0052 +-Problem: More-prompt not properly tested. +-Solution: Add a test case. (Dominique PellĂ©, closes #5404) +-Files: src/testdir/test_messages.vim +- +-Patch 8.2.0053 +-Problem: windowsversion() does not always return the right value. +-Solution: Add a compatibility section in the manifest. (Ken Takata, +- closes #5407) +-Files: src/gvim.exe.mnf +- +-Patch 8.2.0054 +-Problem: :diffget and :diffput don't have good completion. +-Solution: Add proper completion. (Dominique PellĂ©, closes #5409) +-Files: runtime/doc/eval.txt, src/buffer.c, src/cmdexpand.c, +- src/testdir/test_diffmode.vim, src/usercmd.c, src/vim.h +- +-Patch 8.2.0055 +-Problem: Cannot use ":gui" in vimrc with VIMDLL enabled. +-Solution: Change the logic, check "gui.starting". (Ken Takata, closes #5408) +-Files: src/gui.c +- +-Patch 8.2.0056 +-Problem: Execution stack is incomplete and inefficient. +-Solution: Introduce a proper execution stack and use it instead of +- sourcing_name/sourcing_lnum. Create a string only when used. +-Files: src/structs.h, src/globals.h, src/autocmd.c, src/buffer.c +- src/debugger.c, src/ex_docmd.c, src/ex_eval.c, src/highlight.c, +- src/main.c, src/map.c, src/message.c, src/proto/scriptfile.pro, +- src/scriptfile.c, src/option.c, src/profiler.c, src/spellfile.c, +- src/term.c, src/testing.c, src/usercmd.c, src/userfunc.c, +- src/kword_test.c, src/testdir/test_debugger.vim +- +-Patch 8.2.0057 (after 8.2.0056) +-Problem: Cannot build with small features. +-Solution: Add #ifdefs. +-Files: src/scriptfile.c +- +-Patch 8.2.0058 +-Problem: Running tests changes ~/.viminfo. +-Solution: Make 'viminfo' empty when summarizing tests results. (closes #5414) +-Files: src/testdir/summarize.vim +- +-Patch 8.2.0059 +-Problem: Compiler warnings for unused variables in small build. (Tony +- Mechelynck) +-Solution: Add #ifdef. +-Files: src/scriptfile.c +- +-Patch 8.2.0060 +-Problem: Message test only runs with one encoding. (Dominique PellĂ©) +-Solution: Run the test with "utf-8" and "latin1". Fix underflow. (related +- to #5410) +-Files: src/message_test.c, src/message.c +- +-Patch 8.2.0061 +-Problem: The execute stack can grow big and never shrinks. +-Solution: Reduce the size in garbage collect. +-Files: src/eval.c +- +-Patch 8.2.0062 +-Problem: Memory test is flaky on FreeBSD. +-Solution: Add a short sleep before getting the first size. +-Files: src/testdir/test_memory_usage.vim +- +-Patch 8.2.0063 +-Problem: Wrong size argument to vim_snprintf(). (Dominique PellĂ©) +-Solution: Reduce the size by the length. (related to #5410) +-Files: src/ops.c +- +-Patch 8.2.0064 +-Problem: Diffmode completion doesn't use per-window setting. +-Solution: Check if a window is in diff mode. (Dominique PellĂ©, closes #5419) +-Files: src/buffer.c, src/testdir/test_diffmode.vim +- +-Patch 8.2.0065 +-Problem: Amiga and alikes: autoopen only used on Amiga OS4. +-Solution: Adjust #ifdefs. (Ola Söder, closes #5413) +-Files: src/os_amiga.c +- +-Patch 8.2.0066 +-Problem: Some corners of vim_snprintf() are not tested. +-Solution: Add a test in C. (Dominique PellĂ©, closes #5422) +-Files: src/message_test.c +- +-Patch 8.2.0067 +-Problem: ERROR_UNKNOWN clashes on some systems. +-Solution: Rename ERROR_ to FCERR_. (Ola Söder, closes #5415) +-Files: src/evalfunc.c, src/userfunc.c, src/vim.h +- +-Patch 8.2.0068 +-Problem: Crash when using Python 3 with "utf32" encoding. (Dominique PellĂ©) +-Solution: Use "utf-8" whenever enc_utf8 is set. (closes #5423) +-Files: src/testdir/test_python3.vim, src/if_py_both.h +- +-Patch 8.2.0069 +-Problem: ETYPE_ is used for two different enums. +-Solution: Rename one to use EXPR_. +-Files: src/structs.h, src/eval.c, src/debugger.c +- +-Patch 8.2.0070 +-Problem: Crash when using Python 3 with "debug" encoding. (Dominique PellĂ©) +-Solution: Use "euc-jp" whenever enc_dbcs is set. +-Files: src/testdir/test_python3.vim, src/if_py_both.h +- +-Patch 8.2.0071 +-Problem: Memory test often fails on Cirrus CI. +-Solution: Allow for more tolerance in the upper limit. Remove sleep. +-Files: src/testdir/test_memory_usage.vim +- +-Patch 8.2.0072 (after 8.2.0071) +-Problem: Memory test still fails on Cirrus CI. +-Solution: Allow for a tiny bit more tolerance in the upper limit. +-Files: src/testdir/test_memory_usage.vim +- +-Patch 8.2.0073 +-Problem: Initializing globals with COMMA is clumsy. +-Solution: Use INIT2(), INIT3(), etc. +-Files: src/vim.h, src/globals.h +- +-Patch 8.2.0074 +-Problem: Python 3 unicode test sometimes fails. +-Solution: Make 'termencoding' empty. Correct number of error message. +-Files: src/change.c, runtime/doc/options.txt, runtime/doc/message.txt, +- src/testdir/test_python3.vim +- +-Patch 8.2.0075 +-Problem: Python 3 unicode test still sometimes fails. +-Solution: Skip the test when 'termencoding' is not empty. +-Files: src/testdir/test_python3.vim +- +-Patch 8.2.0076 +-Problem: Python 3 unicode test fails on MS-Windows. +-Solution: Do not set 'encoding' to "debug" on MS-Windows. +-Files: src/testdir/test_python3.vim +- +-Patch 8.2.0077 +-Problem: settagstack() cannot truncate at current index. +-Solution: Add the "t" action. (Yegappan Lakshmanan, closes #5417) +-Files: runtime/doc/eval.txt, src/evalfunc.c, src/tag.c, +- src/testdir/test_tagjump.vim +- +-Patch 8.2.0078 +-Problem: Expanding works differently the second time. +-Solution: Keep the expanded name when redefining a function. (closes #5425) +-Files: src/testdir/test_vimscript.vim, src/userfunc.c +- +-Patch 8.2.0079 +-Problem: Python 3 unicode test still fails on MS-Windows. +-Solution: Do not set 'encoding' to "euc-tw" on MS-Windows. +-Files: src/testdir/test_python3.vim +- +-Patch 8.2.0080 +-Problem: Globals using INIT4() are not in the tags file. +-Solution: Adjust the tags command. +-Files: src/configure.ac, src/auto/configure +- +-Patch 8.2.0081 +-Problem: MS-Windows also need the change to support INIT4(). +-Solution: Add the ctags arguments. (Ken Takata) +-Files: src/Make_cyg_ming.mak, src/Make_mvc.mak +- +-Patch 8.2.0082 +-Problem: When reusing a buffer listeners are not cleared. (Axel Forsman) +-Solution: Clear listeners when reusing a buffer. (closes #5431) +-Files: src/testdir/test_listener.vim, src/buffer.c +- +-Patch 8.2.0083 +-Problem: Text properties wrong when tabs and spaces are exchanged. +-Solution: Take text properties into account. (Nobuhiro Takasaki, +- closes #5427) +-Files: src/edit.c, src/testdir/test_textprop.vim +- +-Patch 8.2.0084 +-Problem: Complete item "user_data" can only be a string. +-Solution: Accept any type of variable. (closes #5412) +-Files: src/testdir/test_ins_complete.vim, src/insexpand.c, src/dict.c, +- src/proto/dict.pro, src/eval.c, runtime/doc/insert.txt +- +-Patch 8.2.0085 +-Problem: Dead code in builtin functions. +-Solution: Clean up the code. +-Files: src/evalvars.c, src/sound.c, src/textprop.c +- +-Patch 8.2.0086 (after 8.2.0084) +-Problem: Build error for small version. (Tony Mechelynck) +-Solution: Only use "user_data" with the +eval feature. Remove unused +- variable. +-Files: src/insexpand.c, src/dict.c +- +-Patch 8.2.0087 +-Problem: Crash in command line expansion when out of memory. +-Solution: Check for NULL pointer. Also make ExpandGeneric() static. +- (Dominique PellĂ©, closes #5437) +-Files: src/cmdexpand.c, src/proto/cmdexpand.pro +- +-Patch 8.2.0088 +-Problem: Insufficient tests for tags; bug in using extra tag field when +- using an ex command to position the cursor. +-Solution: Fix the bug, add more tests. (Yegappan Lakshmanan, closes #5439) +-Files: runtime/doc/tagsrch.txt, src/tag.c, +- src/testdir/test_ins_complete.vim, src/testdir/test_tagfunc.vim, +- src/testdir/test_tagjump.vim, src/testdir/test_taglist.vim +- +-Patch 8.2.0089 +-Problem: Crash when running out of memory in :setfiletype completion. +-Solution: Do not allocate memory. (Dominique PellĂ©, closes #5438) +-Files: src/cmdexpand.c +- +-Patch 8.2.0090 +-Problem: Generated files show up in git status. +-Solution: Ignore a few more files. +-Files: .gitignore +- +-Patch 8.2.0091 +-Problem: Compiler warnings for size_t / int types. +-Solution: Change type to size_t. (Mike Williams) +-Files: src/scriptfile.c +- +-Patch 8.2.0092 +-Problem: Tags functionality insufficiently tested. +-Solution: Add more tags tests. (Yegappan Lakshmanan, closes #5446) +-Files: src/testdir/test_tagjump.vim +- +-Patch 8.2.0093 +-Problem: win_splitmove() can make Vim hang. +-Solution: Check windows exists in the current tab page. (closes #5444) +-Files: src/testdir/test_window_cmd.vim, src/evalwindow.c +- +-Patch 8.2.0094 +-Problem: MS-Windows: cannot build with Strawberry Perl 5.30. +-Solution: Define __builtin_expect() as a workaround. (Ken Takata, +- closes #5267) +-Files: src/if_perl.xs +- +-Patch 8.2.0095 +-Problem: Cannot specify exit code for :cquit. +-Solution: Add optional argument. (Thinca, Yegappan Lakshmanan, closes #5442) +-Files: runtime/doc/quickfix.txt, src/ex_cmds.h, src/ex_docmd.c, +- src/testdir/test_quickfix.vim +- +-Patch 8.2.0096 +-Problem: Cannot create tiny popup window in last column. (Daniel Steinberg) +-Solution: Remove position limit. (closes #5447) +-Files: src/popupwin.c, src/testdir/test_popupwin.vim, +- src/testdir/dumps/Test_popupwin_20.dump, +- src/testdir/dumps/Test_popupwin_21.dump +- +-Patch 8.2.0097 +-Problem: Crash with autocommand and spellfile. (Tim Pope) +-Solution: Do not pop exestack when not pushed. (closes #5450) +-Files: src/testdir/test_autocmd.vim, src/spellfile.c +- +-Patch 8.2.0098 +-Problem: Exe stack length can be wrong without being detected. +-Solution: Add a check when ABORT_ON_INTERNAL_ERROR is defined. +-Files: src/macros.h, src/autocmd.c, src/buffer.c, src/ex_docmd.c, +- src/main.c, src/map.c, src/scriptfile.c, src/spellfile.c, +- src/userfunc.c +- +-Patch 8.2.0099 +-Problem: Use of NULL pointer when out of memory. +-Solution: Check for NULL pointer. (Dominique PellĂ©, closes #5449) +-Files: src/cmdexpand.c +- +-Patch 8.2.0100 +-Problem: Macros for Ruby are too complicated. +-Solution: Do not use DYNAMIC_RUBY_VER, use RUBY_VERSION. (Ken Takata, +- closes #5452) +-Files: src/Make_cyg_ming.mak, src/Make_mvc.mak, src/auto/configure, +- src/configure.ac, src/if_ruby.c +- +-Patch 8.2.0101 +-Problem: Crash when passing null object to ":echomsg". +-Solution: Check for NULL pointer. (Yasuhiro Matsumoto, closes #5460) +-Files: src/eval.c, src/testdir/test_messages.vim +- +-Patch 8.2.0102 +-Problem: Messages test fails in small version. +-Solution: Only use test_null_job() when available. +-Files: src/testdir/test_messages.vim +- +-Patch 8.2.0103 +-Problem: Using null object with execute() has strange effects. +-Solution: Give an error message for Job and Channel. +-Files: src/testdir/test_execute_func.vim, src/globals.h, src/eval.c, +- src/evalfunc.c +- +-Patch 8.2.0104 +-Problem: Using channel or job with ":execute" has strange effects. +-Solution: Give an error message for Job and Channel. +-Files: src/testdir/test_eval_stuff.vim, src/eval.c +- +-Patch 8.2.0105 +-Problem: Vim license not easy to find on github. +-Solution: Add a separate LICENCE file. (closes #5458) +-Files: LICENSE, Filelist +- +-Patch 8.2.0106 +-Problem: Printf formats are not exactly right. +-Solution: Adjust signed/unsigned conversions. (Frazer Clews, closes #5456) +-Files: runtime/tools/ccfilter.c, src/libvterm/src/parser.c, +- src/libvterm/src/pen.c, src/ui.c +- +-Patch 8.2.0107 +-Problem: Hgignore is out of sync from gitignore. +-Solution: Add lines to hgignore. (Ken Takata) +-Files: .hgignore +- +-Patch 8.2.0108 +-Problem: When sign text is changed a manual redraw is needed. (Pontus +- Lietzler) +-Solution: Redraw automatically. (closes #5455) +-Files: src/testdir/test_signs.vim, src/sign.c, +- src/testdir/dumps/Test_sign_cursor_1.dump, +- src/testdir/dumps/Test_sign_cursor_2.dump, +- src/testdir/dumps/Test_sign_cursor_3.dump, +- src/testdir/dumps/Test_sign_cursor_01.dump, +- src/testdir/dumps/Test_sign_cursor_02.dump +- +-Patch 8.2.0109 +-Problem: Corrupted text properties when expanding spaces. +-Solution: Reallocate the line. (Nobuhiro Takasaki, closes #5457) +-Files: src/edit.c, src/testdir/test_textprop.vim +- +-Patch 8.2.0110 +-Problem: prop_find() is not implemented. +-Solution: Implement prop_find(). (Ryan Hackett, closes #5421, closes #4970) +-Files: src/evalfunc.c, src/proto/textprop.pro, +- src/testdir/test_textprop.vim, src/textprop.c, +- runtime/doc/textprop.txt +- +-Patch 8.2.0111 +-Problem: VAR_SPECIAL is also used for booleans. +-Solution: Add VAR_BOOL for better type checking. +-Files: src/structs.h, src/dict.c, src/eval.c, src/evalfunc.c, +- src/evalvars.c, src/if_lua.c, src/if_mzsch.c, src/if_py_both.h, +- src/if_ruby.c, src/json.c, src/popupmenu.c, src/proto/dict.pro, +- src/testing.c, src/vim.h, src/viminfo.c +- +-Patch 8.2.0112 +-Problem: Illegal memory access when using 'cindent'. +-Solution: Check for NUL byte. (Dominique PellĂ©, closes #5470) +-Files: src/cindent.c, src/testdir/test_cindent.vim +- +-Patch 8.2.0113 (after 8.2.0095) +-Problem: "make cmdidxs" fails. +-Solution: Allow address for ":cquit". Add --not-a-term to avoid a delay. +-Files: src/ex_cmds.h, src/Makefile, src/Make_cyg_ming.mak, +- src/Make_mvc.mak +- +-Patch 8.2.0114 +-Problem: Info about sourced scripts is scattered. +-Solution: Use scriptitem_T for info about a script, including s: variables. +- Drop ga_scripts. +-Files: src/structs.h, src/evalvars.c, src/scriptfile.c, src/eval.c +- +-Patch 8.2.0115 +-Problem: Byte2line() does not work correctly with text properties. (Billie +- Cleek) +-Solution: Take the bytes of the text properties into account. +- (closes #5334) +-Files: src/testdir/test_textprop.vim, src/memline.c +- +-Patch 8.2.0116 +-Problem: BufEnter autocmd not triggered on ":tab drop". (Andy Stewart) +-Solution: Decrement autocmd_no_enter for the last file. (closes #1660, +- closes #5473) +-Files: src/arglist.c, src/testdir/test_tabpage.vim +- +-Patch 8.2.0117 +-Problem: Crash when using gettabwinvar() with invalid arguments. (Yilin +- Yang) +-Solution: Use "curtab" if "tp" is NULL. (closes #5475) +-Files: src/evalwindow.c, src/testdir/test_getvar.vim +- +-Patch 8.2.0118 +-Problem: Crash when cycling to buffers involving popup window. +-Solution: Do not decrement buffer reference count. +-Files: src/popupwin.c, src/testdir/test_popupwin.vim, +- src/testdir/dumps/Test_popupwin_infopopup_7.dump +- +-Patch 8.2.0119 +-Problem: Message test fails on some platforms. (Elimar Riesebieter) +-Solution: Add type cast to vim_snprintf() argument. (Dominique PellĂ©) +-Files: src/message_test.c +- +-Patch 8.2.0120 +-Problem: virtcol() does not check arguments to be valid, which may lead to +- a crash. +-Solution: Check the column to be valid. Do not decrement MAXCOL. +- (closes #5480) +-Files: src/evalfunc.c, src/testdir/test_marks.vim +- +-Patch 8.2.0121 +-Problem: filter() and map() on blob don't work. +-Solution: Correct the code. (closes #5483) +-Files: src/list.c, src/testdir/test_blob.vim +- +-Patch 8.2.0122 +-Problem: Readme files still mention MS-DOS. +-Solution: Update readme files. (Ken Takata, closes #5486) +-Files: README.md, README.txt, READMEdir/README_dos.txt, +- READMEdir/README_srcdos.txt, READMEdir/README_w32s.txt, +- runtime/doc/os_win32.txt +- +-Patch 8.2.0123 +-Problem: complete_info() does not work when CompleteDone is triggered. +-Solution: Trigger CompleteDone before clearing the info. +-Files: src/insexpand.c, runtime/doc/autocmd.txt, +- src/testdir/test_ins_complete.vim +- +-Patch 8.2.0124 +-Problem: Compiler warnings for variable types. +-Solution: Change type, add type cast. (Mike Williams) +-Files: src/memline.c +- +-Patch 8.2.0125 +-Problem: :mode no longer works for any system. +-Solution: Always give an error message. +-Files: src/ex_docmd.c, runtime/doc/quickref.txt, src/os_amiga.c, +- src/proto/os_amiga.pro, src/os_mswin.c, src/proto/os_mswin.pro, +- src/os_unix.c, src/proto/os_unix.pro +- +-Patch 8.2.0126 (after 8.2.0124) +-Problem: Textprop test fails. +-Solution: Fix sign in computation. +-Files: src/memline.c +- +-Patch 8.2.0127 +-Problem: Some buffer commands work in a popup window. +-Solution: Disallow :bnext, :bprev, etc. (Naruhiko Nishino, closes #5494) +-Files: src/ex_docmd.c, src/testdir/test_popupwin.vim +- +-Patch 8.2.0128 +-Problem: Cannot list options one per line. +-Solution: Use ":set!" to list one option per line. +-Files: src/ex_docmd.c, src/option.c, src/proto/option.pro, src/vim.h, +- src/ex_cmds.h, src/optiondefs.h, src/testdir/test_options.vim, +- runtime/doc/options.txt +- +-Patch 8.2.0129 +-Problem: MS-Windows installer doesn't use Turkish translations. +-Solution: Enable the Turkish translations and fix a few. (Emir Sarı, +- closes #5493) +-Files: nsis/gvim.nsi, nsis/lang/turkish.nsi +- +-Patch 8.2.0130 +-Problem: Python3 ranges are not tested. +-Solution: Add test. (Dominique PellĂ©, closes #5498) +-Files: src/testdir/test_python3.vim +- +-Patch 8.2.0131 +-Problem: Command line is not cleared when switching tabs and the command +- line height differs. +-Solution: Set the "clear_cmdline" flag when needed. (Naruhiko Nishino, +- closes #5495) +-Files: src/testdir/dumps/Test_cmdlineclear_tabenter.dump, +- src/testdir/test_cmdline.vim, src/window.c +- +-Patch 8.2.0132 +-Problem: Script may be re-used when deleting and creating a new one. +-Solution: When the inode matches, also check the file name. +-Files: src/scriptfile.c, src/testdir/test_source.vim +- +-Patch 8.2.0133 +-Problem: Invalid memory access with search command. +-Solution: When :normal runs out of characters in bracketed paste mode break +- out of the loop.(closes #5511) +-Files: src/testdir/test_search.vim, src/edit.c +- +-Patch 8.2.0134 +-Problem: Some map functionality not covered by tests. +-Solution: Add tests. (Yegappan Lakshmanan, closes #5504) +-Files: src/testdir/test_maparg.vim, src/testdir/test_mapping.vim +- +-Patch 8.2.0135 (after 8.2.0133) +-Problem: Bracketed paste can still cause invalid memory access. (Dominique +- PellĂ©) +-Solution: Check for NULL pointer. +-Files: src/edit.c, src/testdir/test_search.vim +- +-Patch 8.2.0136 +-Problem: Stray ch_logfile() call. +-Solution: Remove it. (closes #5503) +-Files: src/testdir/test_source.vim +- +-Patch 8.2.0137 +-Problem: Crash when using win_execute() from a new tab. +-Solution: Set the tp_*win pointers. (Ozaki Kiichi, closes #5512) +-Files: src/testdir/test_winbuf_close.vim, src/window.c +- +-Patch 8.2.0138 +-Problem: Memory leak when starting a job fails. +-Solution: Free the list of arguments. (Ozaki Kiichi, closes #5510) +-Files: src/channel.c, src/testdir/test_channel.vim +- +-Patch 8.2.0139 +-Problem: MS-Windows: default for IME is inconsistent. +-Solution: Also make IME default enabled with MVC. (Ken Takata, closes #5508) +-Files: src/Make_mvc.mak +- +-Patch 8.2.0140 +-Problem: CI does not test building doc tags. +-Solution: Add the vimtags/gcc build. Cleanup showing version. (Ozaki Kiichi, +- closes #5513) +-Files: .travis.yml, Filelist, ci/if_ver-1.vim, ci/if_ver-2.vim, +- ci/if_ver-cmd.vim, runtime/doc/Makefile, runtime/doc/doctags.vim, +- src/testdir/if_ver-1.vim, src/testdir/if_ver-2.vim +- +-Patch 8.2.0141 +-Problem: No swift filetype detection. +-Solution: Add swift, swiftgyb and sil. (Emir Sarı, closes #5517) +-Files: runtime/filetype.vim, src/testdir/test_filetype.vim +- +-Patch 8.2.0142 +-Problem: Possible to enter popup window with CTRL-W p. (John Devin) +-Solution: Check entered window is not a popup window. (closes #5515) +-Files: src/window.c, src/popupwin.c, src/testdir/test_popupwin.vim, +- src/testdir/dumps/Test_popupwin_previewpopup_9.dump, +- src/testdir/dumps/Test_popupwin_previewpopup_10.dump +- +-Patch 8.2.0143 +-Problem: Coverity warning for possible use of NULL pointer. +-Solution: Check argv is not NULL. +-Files: src/channel.c +- +-Patch 8.2.0144 +-Problem: Some mapping code is not fully tested. +-Solution: Add more test cases. (Yegappan Lakshmanan, closes #5519) +-Files: src/testdir/test_langmap.vim, src/testdir/test_maparg.vim, +- src/testdir/test_mapping.vim +- +-Patch 8.2.0145 +-Problem: Using #error for compilation errors should be OK now. +-Solution: Use #error. (Ken Takata, closes #5299) +-Files: src/blowfish.c, src/vim.h +- +-Patch 8.2.0146 +-Problem: Wrong indent when 'showbreak' and 'breakindent' are set and +- 'briopt' includes "sbr". +-Solution: Reset "need_showbreak" where needed. (Ken Takata, closes #5523) +-Files: src/drawline.c, src/testdir/test_breakindent.vim +- +-Patch 8.2.0147 +-Problem: Block Visual mode operators not correct when 'linebreak' set. +-Solution: Set w_p_lbr to lbr_saved more often. (Ken Takata, closes #5524) +-Files: src/ops.c, src/testdir/test_listlbr.vim +- +-Patch 8.2.0148 +-Problem: Mapping related function in wrong source file. +-Solution: Move the function. Add a few more test cases. (Yegappan +- Lakshmanan, closes #5528) +-Files: src/map.c, src/proto/term.pro, src/term.c, +- src/testdir/test_mapping.vim +- +-Patch 8.2.0149 +-Problem: Maintaining a Vim9 branch separately is more work. +-Solution: Merge the Vim9 script changes. +-Files: README.md, README_VIM9.md, runtime/doc/Makefile, +- runtime/doc/eval.txt, runtime/doc/options.txt, runtime/doc/tags, +- runtime/doc/vim9.txt, runtime/ftplugin/vim.vim, +- runtime/indent/vim.vim, runtime/syntax/vim.vim, +- src/Make_cyg_ming.mak, src/Make_mvc.mak, src/Makefile, src/blob.c, +- src/channel.c, src/dict.c, src/eval.c, src/evalbuffer.c, +- src/evalfunc.c, src/evalvars.c, src/ex_cmdidxs.h, src/ex_cmds.h, +- src/ex_docmd.c, src/ex_eval.c, src/filepath.c, src/globals.h, +- src/gui.c, src/if_lua.c, src/if_py_both.h, src/insexpand.c, +- src/json.c, src/list.c, src/macros.h, src/main.c, src/message.c, +- src/misc1.c, src/proto.h, src/proto/blob.pro, src/proto/eval.pro, +- src/proto/evalfunc.pro, src/proto/evalvars.pro, +- src/proto/ex_docmd.pro, src/proto/ex_eval.pro, src/proto/list.pro, +- src/proto/message.pro, src/proto/scriptfile.pro, +- src/proto/userfunc.pro, src/proto/vim9compile.pro, +- src/proto/vim9execute.pro, src/proto/vim9script.pro, +- src/scriptfile.c, src/session.c, src/structs.h, src/syntax.c, +- src/testdir/Make_all.mak, src/testdir/test_vim9_expr.vim, +- src/testdir/test_vim9_script.vim, src/testing.c, src/userfunc.c, +- src/vim.h, src/vim9.h, src/vim9compile.c, src/vim9execute.c, +- src/vim9script.c, src/viminfo.c +- +-Patch 8.2.0150 +-Problem: Cannot define python function when using :execute. (Yasuhiro +- Matsumoto) +-Solution: Do not recognize "def" inside "function. +-Files: src/testdir/test_vim9_script.vim, src/userfunc.c +- +-Patch 8.2.0151 +-Problem: Detecting a script was already sourced is unreliable. +-Solution: Do not use the inode number. +-Files: src/scriptfile.c, src/structs.h, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0152 +-Problem: Restoring ctrl_x_mode is not needed. +-Solution: Remove restoring the old value, it's changed again soon. +-Files: src/insexpand.c +- +-Patch 8.2.0153 +-Problem: Warning shows when listing version info. +-Solution: Use "-u NONE". (Ozaki Kiichi, closes #5534) +-Files: .travis.yml +- +-Patch 8.2.0154 +-Problem: Reallocating the list of scripts is inefficient. +-Solution: Instead of using a growarray of scriptitem_T, store pointers and +- allocate each scriptitem_T separately. Also avoids that the +- growarray pointers change when sourcing a new script. +-Files: src/globals.h, src/eval.c, src/evalvars.c, src/ex_docmd.c, +- src/profiler.c, src/scriptfile.c, src/vim9compile.c, +- src/vim9execute.c, src/vim9script.c +- +-Patch 8.2.0155 +-Problem: Warnings from MinGW compiler. (John Marriott) Json test fails when +- building without +float feature. +-Solution: Init variables. Fix Json parsing. Skip a few tests that require +- the +float feature. +-Files: src/vim9script.c, src/vim9compile.c, src/vim9execute.c, +- src/if_py_both.h, src/json.c, src/testdir/test_method.vim +- +-Patch 8.2.0156 +-Problem: Various typos in source files and tests. +-Solution: Fix the typos. (Emir Sarı, closes #5532) +-Files: Makefile, src/INSTALLvms.txt, src/Make_vms.mms, src/beval.h, +- src/buffer.c, src/charset.c, src/evalvars.c, src/ex_cmds.c, +- src/ex_docmd.c, src/getchar.c, src/gui.c, src/gui_mac.c, +- src/gui_photon.c, src/if_perl.xs, +- src/libvterm/t/11state_movecursor.test, +- src/libvterm/t/41screen_unicode.test, src/mbyte.c, src/memline.c, +- src/normal.c, src/ops.c, src/option.c, src/option.h, +- src/os_unix.c, src/os_win32.c, src/quickfix.c, src/register.c, +- src/spell.c, src/tag.c, src/term.c, +- src/testdir/test_breakindent.vim, src/testdir/test_channel.vim, +- src/testdir/test_cindent.vim, src/testdir/test_digraph.vim, +- src/testdir/test_edit.vim, src/testdir/test_netbeans.vim, +- src/testdir/test_quickfix.vim, src/testdir/test_registers.vim, +- src/testdir/test_stat.vim, src/ui.c, src/xxd/xxd.c +- +-Patch 8.2.0157 +-Problem: Vim9 script files not in list of distributed files. +-Solution: Add the entries. +-Files: Filelist +- +-Patch 8.2.0158 (after 8.2.0123) +-Problem: Triggering CompleteDone earlier is not backwards compatible. +- (Daniel Hahler) +-Solution: Add CompleteDonePre instead. +-Files: src/insexpand.c, runtime/doc/autocmd.txt, src/autocmd.c, +- src/vim.h, src/testdir/test_ins_complete.vim +- +-Patch 8.2.0159 +-Problem: Non-materialized range() list causes problems. (Fujiwara Takuya) +-Solution: Materialize the list where needed. +-Files: src/testdir/test_functions.vim, src/testdir/test_python3.vim, +- src/userfunc.c, src/evalfunc.c, src/highlight.c, src/evalvars.c, +- src/popupmenu.c, src/insexpand.c, src/json.c, src/channel.c, +- src/eval.c +- +-Patch 8.2.0160 (after 8.2.0159) +-Problem: Range test fails. +-Solution: Include change in list code. (#5541) +-Files: src/list.c +- +-Patch 8.2.0161 +-Problem: Not recognizing .gv file as dot filetype. +-Solution: Add *.gv to dot pattern. (closes #5544) +-Files: runtime/filetype.vim, src/testdir/test_filetype.vim +- +-Patch 8.2.0162 +-Problem: Balloon test fails in the GUI. +-Solution: Skip test in the GUI. +-Files: src/testdir/test_functions.vim +- +-Patch 8.2.0163 +-Problem: Test hangs on MS-Windows console. +-Solution: use feedkeys() instead of test_feedinput(). (Ken Takata) +-Files: src/testdir/test_functions.vim, src/testing.c +- +-Patch 8.2.0164 +-Problem: Test_alot takes too long. +-Solution: Run several tests individually. +-Files: src/testdir/test_alot.vim, src/testdir/Make_all.mak +- +-Patch 8.2.0165 +-Problem: Coverity warning for using NULL pointer. +-Solution: Add missing "else". +-Files: src/vim9compile.c +- +-Patch 8.2.0166 +-Problem: Coverity warning for using uninitialized variable. +-Solution: Check for failure. +-Files: src/vim9execute.c +- +-Patch 8.2.0167 +-Problem: Coverity warning for ignoring return value. +-Solution: Check the return value and jump if failed. +-Files: src/vim9execute.c, src/testdir/test_vim9_expr.vim +- +-Patch 8.2.0168 +-Problem: Coverity warning for assigning NULL to an option. +-Solution: Use empty string instead of NULL. +-Files: src/vim9execute.c, src/testdir/test_vim9_expr.vim +- +-Patch 8.2.0169 +-Problem: Coverity warning for dead code. +-Solution: Check if inside try-finally. +-Files: src/vim9execute.c +- +-Patch 8.2.0170 +-Problem: Coverity warning for ignoring return value. +-Solution: Check the return value and return if failed. +-Files: src/vim9compile.c +- +-Patch 8.2.0171 +-Problem: Coverity warning for using uninitialized buffer. +-Solution: Check the skip flag. +-Files: src/userfunc.c +- +-Patch 8.2.0172 +-Problem: Coverity warning for not restoring character. +-Solution: Restore the character also in case of failure. +-Files: src/vim9script.c +- +-Patch 8.2.0173 +-Problem: Build fails with old compiler. +-Solution: Do not use anonymous unions. (John Marriott) +-Files: src/vim9compile.c, src/evalvars.c, src/list.c, src/structs.h, +- src/evalfunc.c, src/channel.c, src/if_mzsch.c, src/if_py_both.h +- +-Patch 8.2.0174 +-Problem: Various commands not completely tested. +-Solution: Add more test cases. (Yegappan Lakshmanan, closes #5551) +-Files: src/testdir/test_excmd.vim, src/testdir/test_fnameescape.vim, +- src/testdir/test_ga.vim, src/testdir/test_global.vim, +- src/testdir/test_move.vim, src/testdir/test_options.vim, +- src/testdir/test_packadd.vim, src/testdir/test_sort.vim, +- src/testdir/test_substitute.vim, src/testdir/test_textformat.vim, +- src/testdir/test_writefile.vim +- +-Patch 8.2.0175 +-Problem: Crash when removing list element in map(). +-Solution: Lock the list. (closes #2652) +-Files: src/testdir/test_filter_map.vim, src/list.c +- +-Patch 8.2.0176 +-Problem: Generating os headers does not work for Swedish. +-Solution: Set the locale to C. (Christian Brabandt, closes #5258) +-Files: src/osdef.sh +- +-Patch 8.2.0177 +-Problem: Memory leak in get_tags(). +-Solution: Free matches when finding a pseudo-tag line. (Dominique PellĂ©, +- closes #5553) +-Files: src/tag.c +- +-Patch 8.2.0178 +-Problem: With VTP the screen may not be restored properly. +-Solution: Add another set of saved RGB values. (Nobuhiro Takasaki, +- closes #5548) +-Files: src/os_win32.c +- +-Patch 8.2.0179 +-Problem: Still a few places where range() does not work. +-Solution: Fix using range() causing problems. +-Files: src/terminal.c, src/testdir/test_functions.vim, +- src/testdir/test_popupwin.vim, src/popupwin.c, src/tag.c, +- src/testdir/dumps/Test_popupwin_20.dump, +- src/testdir/dumps/Test_popupwin_21.dump, +- src/testdir/dumps/Test_popup_settext_07.dump, src/globals.h +- +-Patch 8.2.0180 +-Problem: Test for wrapmargin fails if terminal is not 80 columns. +-Solution: Vertical split the window. (Ken Takata, closes #5554) +-Files: src/testdir/test_textformat.vim +- +-Patch 8.2.0181 +-Problem: Problems parsing :term arguments. +-Solution: Improve parsing, fix memory leak, add tests. (Ozaki Kiichi, +- closes #5536) +-Files: src/channel.c, src/proto/channel.pro, src/structs.h, +- src/terminal.c, src/testdir/test_terminal.vim +- +-Patch 8.2.0182 +-Problem: Min() and max() materialize a range() list. +-Solution: Compute the result without materializing the list. (#5541) +-Files: src/evalfunc.c +- +-Patch 8.2.0183 +-Problem: Tests fail when the float feature is disabled. +-Solution: Skip tests that don't work without float support. +-Files: src/testdir/shared.vim, src/testdir/test_blob.vim, +- src/testdir/test_channel.vim, src/testdir/test_cscope.vim, +- src/testdir/test_execute_func.vim, src/testdir/test_expr.vim, +- src/testdir/test_functions.vim, src/testdir/test_lambda.vim, +- src/testdir/test_listdict.vim, src/testdir/test_lua.vim, +- src/testdir/test_options.vim, src/testdir/test_partial.vim, +- src/testdir/test_ruby.vim, src/testdir/test_sort.vim, +- src/testdir/test_timers.vim, src/testdir/test_true_false.vim, +- src/testdir/test_user_func.vim, src/testdir/test_vim9_expr.vim, +- src/testdir/test_vimscript.vim, src/testdir/test_regexp_latin.vim, +- src/testdir/test_glob2regpat.vim +- +-Patch 8.2.0184 +-Problem: Blob test fails. +-Solution: Check for different error when float feature is missing. +-Files: src/testdir/test_blob.vim +- +-Patch 8.2.0185 +-Problem: Vim9 script: cannot use "if has()" to skip lines. +-Solution: Evaluate constant expression at runtime. +-Files: src/vim9compile.c, src/evalfunc.c, src/proto/evalfunc.pro, +- src/userfunc.c, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0186 +-Problem: A couple of tests may fail when features are missing. +-Solution: Check for features. (Dominique PellĂ©, closes #5561) +-Files: src/testdir/test_functions.vim, src/testdir/test_highlight.vim +- +-Patch 8.2.0187 +-Problem: Redundant code. +-Solution: Remove unused assignments. (Dominique PellĂ©, closes #5557) +-Files: src/vim9compile.c +- +-Patch 8.2.0188 +-Problem: Check commands don't work well with Vim9 script. +-Solution: Improve constant expression handling. +-Files: src/vim9compile.c, src/testdir/check.vim, +- src/testdir/test_vim9_expr.vim +- +-Patch 8.2.0189 +-Problem: cd() with NULL argument crashes. +-Solution: Check for NULL. (Ken Takata, closes #5558) +-Files: src/testdir/test_cd.vim, src/ex_docmd.c +- +-Patch 8.2.0190 +-Problem: Kotlin files are not recognized. +-Solution: Detect Kotlin files. (Alkeryn, closes #5560) +-Files: runtime/filetype.vim, src/testdir/test_filetype.vim +- +-Patch 8.2.0191 +-Problem: Cannot put a terminal in a popup window. +-Solution: Allow opening a terminal in a popup window. It will always have +- keyboard focus until closed. +-Files: src/popupwin.c, src/proto/popupwin.pro, src/terminal.c, +- src/proto/terminal.pro, src/macros.h, src/mouse.c, +- src/highlight.c, src/drawline.c, src/optionstr.c, src/window.c, +- src/testdir/test_terminal.vim, +- src/testdir/dumps/Test_terminal_popup_1.dump, +- src/testdir/dumps/Test_terminal_popup_2.dump, +- src/testdir/dumps/Test_terminal_popup_3.dump +- +-Patch 8.2.0192 (after 8.2.0191) +-Problem: Build failure without +terminal feature. +-Solution: Add #ifdefs. +-Files: src/popupwin.c +- +-Patch 8.2.0193 (after 8.2.0191) +-Problem: Still build failure without +terminal feature. +-Solution: Add more #ifdefs. +-Files: src/macros.h +- +-Patch 8.2.0194 (after 8.2.0193) +-Problem: Some commands can cause problems in terminal popup. +-Solution: Disallow more commands. +-Files: src/macros.h, src/popupwin.c, src/proto/popupwin.pro, +- src/arglist.c, src/ex_docmd.c, src/window.c, +- src/testdir/test_terminal.vim +- +-Patch 8.2.0195 +-Problem: Some tests fail when run in the GUI. +-Solution: Make sure the window width is enough. In the GUI run terminal Vim +- in the terminal, if possible. +-Files: src/testdir/test_highlight.vim, src/testdir/check.vim, +- src/testdir/test_terminal.vim +- +-Patch 8.2.0196 +-Problem: Blocking commands for a finished job in a popup window. +-Solution: Do not block commands if the job has finished. Adjust test. +-Files: src/popupwin.c, src/testdir/test_popupwin.vim, src/window.c, +- src/terminal.c, src/proto/terminal.pro +- +-Patch 8.2.0197 +-Problem: Some Ex commands not sufficiently tested. +-Solution: Add more tests. (Yegappan Lakshmanan, closes #5565) +-Files: src/testdir/test_global.vim, src/testdir/test_help.vim, +- src/testdir/test_help_tagjump.vim, src/testdir/test_options.vim, +- src/testdir/test_substitute.vim, src/testdir/test_textformat.vim, +- src/testdir/test_writefile.vim +- +-Patch 8.2.0198 +-Problem: No tests for y/n prompt. +-Solution: Add tests. (Dominique PellĂ©, closes #5564) +-Files: src/testdir/test_messages.vim +- +-Patch 8.2.0199 +-Problem: Vim9 script commands not sufficiently tested. +-Solution: Add more tests. Fix script-local function use. +-Files: src/vim9execute.c, src/testdir/test_vim9_script.vim, +- src/userfunc.c +- +-Patch 8.2.0200 +-Problem: Vim9 script commands not sufficiently tested. +-Solution: Add more tests. Fix storing global variable. Make script +- variables work. +-Files: src/vim9compile.c, src/vim9execute.c, src/vim9.h, src/evalvars.c, +- src/proto/evalvars.pro, src/testdir/test_vim9_script.vim, +- src/misc1.c, src/proto/misc1.pro +- +-Patch 8.2.0201 +-Problem: Cannot assign to an imported variable. +-Solution: Make it work. +-Files: src/evalvars.c, src/vim9compile.c, src/proto/vim9compile.pro, +- src/userfunc.c, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0202 +-Problem: When 'lazyredraw' is set the window title may not be updated. +-Solution: Set "do_redraw" before entering the main loop. (Jason Franklin) +-Files: src/main.c +- +-Patch 8.2.0203 +-Problem: :helptags and some other functionality not tested. +-Solution: Add more tests. (Yegappan Lakshmanan, closes #5567) +-Files: src/testdir/test_compiler.vim, src/testdir/test_ex_mode.vim, +- src/testdir/test_excmd.vim, src/testdir/test_filechanged.vim, +- src/testdir/test_help.vim, src/testdir/test_help_tagjump.vim, +- src/testdir/test_timers.vim, src/testdir/test_window_cmd.vim +- +-Patch 8.2.0204 +-Problem: Crash when using winnr('j') in a popup window. +-Solution: Do not search for neighbors in a popup window. (closes #5568) +-Files: src/window.c, src/testdir/test_popupwin.vim, src/evalwindow.c +- +-Patch 8.2.0205 +-Problem: Error code E899 used twice. +-Solution: Use E863 for the terminal in popup error. +-Files: src/popupwin.c +- +-Patch 8.2.0206 +-Problem: Calling Vim9 function using default argument fails. +-Solution: Give an appropriate error. (closes #5572) +-Files: src/testdir/test_vim9_script.vim, src/vim9compile.c, +- src/vim9execute.c +- +-Patch 8.2.0207 +-Problem: Crash when missing member type on list argument. +-Solution: Check for invalid type. (closes #5572) +-Files: src/userfunc.c, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0208 +-Problem: Fnamemodify() does not apply ":~" when followed by ":.". +-Solution: Don't let a failing ":." cause the ":~" to be skipped. (Yasuhiro +- Matsumoto, closes #5577) +-Files: runtime/doc/cmdline.txt, src/filepath.c, +- src/testdir/test_fnamemodify.vim +- +-Patch 8.2.0209 +-Problem: Function a bit far away from where it's used. +-Solution: Move function close to where it's used. (Ken Takata, closes #5569) +-Files: src/fileio.c, src/filepath.c +- +-Patch 8.2.0210 +-Problem: Coverity complains about uninitialized field. +-Solution: Initialize the field. +-Files: src/vim9compile.c +- +-Patch 8.2.0211 +-Problem: Test for ANSI colors fails without an "ls" command. +-Solution: Use "dir". (Ken Takata, closes #5582) +-Files: src/testdir/test_functions.vim +- +-Patch 8.2.0212 +-Problem: Missing search/substitute pattern hardly tested. +-Solution: Add test_clear_search_pat() and tests. (Yegappan Lakshmanan, +- closes #5579) +-Files: runtime/doc/eval.txt, runtime/doc/testing.txt, +- runtime/doc/usr_41.txt, src/evalfunc.c, src/proto/regexp.pro, +- src/proto/search.pro, src/proto/testing.pro, src/regexp.c, +- src/search.c, src/testdir/test_quickfix.vim, +- src/testdir/test_search.vim, src/testdir/test_sort.vim, +- src/testdir/test_substitute.vim, src/testing.c +- +-Patch 8.2.0213 +-Problem: Configure does not recognize gcc 10.0 and later. +-Solution: Adjust the pattern matching the version number. (Sergei +- Trofimovich, closes #5580) +-Files: src/configure.ac, src/auto/configure +- +-Patch 8.2.0214 +-Problem: A popup window with a terminal can be made hidden. +-Solution: Disallow hiding a terminal popup. +-Files: src/testdir/test_terminal.vim, src/popupwin.c, +- src/testdir/dumps/Test_terminal_popup_4.dump +- +-Patch 8.2.0215 (after 8.2.0208) +-Problem: Wrong file name shortening. (Ingo Karkat) +-Solution: Better check for path separator. (Yasuhiro Matsumoto, +- closes #5583, closes #5584) +-Files: src/filepath.c, src/testdir/test_fnamemodify.vim +- +-Patch 8.2.0216 +-Problem: Several Vim9 instructions are not tested. +-Solution: Add more tests. Fix :disassemble output. Make catch with pattern +- work. +-Files: src/testdir/test_vim9_script.vim, src/vim9execute.c, +- src/vim9compile.c +- +-Patch 8.2.0217 (after 8.2.0214) +-Problem: Terminal test fails on Mac. +-Solution: Add a short wait. +-Files: src/testdir/test_terminal.vim +- +-Patch 8.2.0218 +-Problem: Several Vim9 instructions are not tested. +-Solution: Add more tests. +-Files: src/testdir/test_vim9_script.vim +- +-Patch 8.2.0219 (after 8.2.0217) +-Problem: Terminal test still fails on Mac. +-Solution: Skip part of the test on Mac. +-Files: src/testdir/test_terminal.vim +- +-Patch 8.2.0220 +-Problem: Terminal test did pass on Mac. +-Solution: Remove the skip again. +-Files: src/testdir/test_terminal.vim +- +-Patch 8.2.0221 +-Problem: No test for Vim9 += and ..=. +-Solution: Add tests. +-Files: src/testdir/test_vim9_script.vim +- +-Patch 8.2.0222 +-Problem: Vim9: optional function arguments don't work yet. +-Solution: Implement optional function arguments. +-Files: src/userfunc.c, src/vim9compile.c, src/vim9execute.c, +- src/structs.h, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0223 +-Problem: Some instructions not yet tested. +-Solution: Disassemble more instructions. Move tests to a new file. Compile +- call to s:function(). +-Files: src/testdir/test_vim9_script.vim, src/testdir/Make_all.mak, +- src/testdir/test_vim9_disassemble.vim, src/vim9compile.c, +- src/userfunc.c, src/proto/userfunc.pro, src/vim.h +- +-Patch 8.2.0224 +-Problem: compiling :elseif not tested yet. +-Solution: Add test for :elseif. Fix generating jumps. +-Files: src/testdir/test_vim9_script.vim, src/vim9compile.c, +- src/testdir/test_vim9_disassemble.vim +- +-Patch 8.2.0225 +-Problem: compiling lambda not tested yet. +-Solution: Add test for lambda and funcref. Drop unused instruction arg. +-Files: src/testdir/test_vim9_disassemble.vim, src/vim9.h, +- src/vim9execute.c +- +-Patch 8.2.0226 +-Problem: Compiling for loop not tested. +-Solution: Add a test. Make variable initialization work for more types. +-Files: src/testdir/test_vim9_disassemble.vim, src/vim9compile.c +- +-Patch 8.2.0227 +-Problem: Compiling a few instructions not tested. +-Solution: Add more test cases. +-Files: src/testdir/test_vim9_disassemble.vim +- +-Patch 8.2.0228 +-Problem: Configure does not recognize gcc version on BSD. +-Solution: Do not use "\+" in the pattern matching the version number. (Ozaki +- Kiichi, closes #5590) +-Files: src/configure.ac, src/auto/configure +- +-Patch 8.2.0229 +-Problem: Compare instructions not tested. +-Solution: Add test cases. Fix disassemble with line continuation. +-Files: src/testdir/test_vim9_disassemble.vim, src/vim9execute.c, +- src/vim9compile.c +- +-Patch 8.2.0230 +-Problem: Terminal popup test is flaky. +-Solution: Increase wait time a bit. +-Files: src/testdir/test_terminal.vim +- +-Patch 8.2.0231 +-Problem: Silent system command may clear the screen. +-Solution: Do not clear the screen in t_te. +-Files: src/term.c +- +-Patch 8.2.0232 +-Problem: The :compiler command causes a crash. (Daniel Steinberg) +-Solution: Do not use the script index if it isn't set. +-Files: src/ex_docmd.c, src/testdir/test_compiler.vim +- +-Patch 8.2.0233 +-Problem: Crash when using garbagecollect() in between rand(). +-Solution: Redesign the rand() and srand() implementation. (Yasuhiro +- Matsumoto, closes #5587, closes #5588) +-Files: src/evalfunc.c, src/testdir/test_random.vim, +- runtime/doc/testing.txt, runtime/doc/eval.txt +- +-Patch 8.2.0234 +-Problem: Message test fails on SunOS. +-Solution: Adjust expectation for printf "%p". (Ozaki Kiichi, closes #5595) +-Files: src/message_test.c +- +-Patch 8.2.0235 +-Problem: Draw error when an empty group is removed from 'statusline'. +-Solution: Do not use highlighting from a removed group. +-Files: src/buffer.c, src/testdir/test_statusline.vim, +- src/testdir/dumps/Test_statusline_1.dump +- +-Patch 8.2.0236 +-Problem: MS-Windows uninstall doesn't delete vimtutor.bat. +-Solution: Change directory before deletion. (Ken Takata, closes #5603) +-Files: src/uninstall.c +- +-Patch 8.2.0237 +-Problem: Crash when setting 'wincolor' on finished terminal window. +- (Bakudankun) +-Solution: Check that the vterm is not NULL. (Yasuhiro Matsumoto, closes +- #5607, closes #5610) +-Files: src/terminal.c, src/testdir/test_terminal.vim +- +-Patch 8.2.0238 +-Problem: MS-Windows: job_stop() results in exit value zero. +-Solution: Call TerminateJobObject() with -1 instead of 0. (Yasuhiro +- Matsumoto, closes #5150, closes #5614) +-Files: src/os_win32.c, src/testdir/test_channel.vim +- +-Patch 8.2.0239 +-Problem: MS-Windows: 'env' job option does not override existing +- environment variables. (Tim Pope) +-Solution: Set the environment variables later. (Yasuhiro Matsumoto, +- closes #5485, closes #5608) +-Files: src/os_win32.c, src/testdir/test_channel.vim +- +-Patch 8.2.0240 +-Problem: Using memory after it was freed. (Dominique PellĂ©) +-Solution: Do not mix conversion buffer with other buffer. +-Files: src/viminfo.c, src/vim.h +- +-Patch 8.2.0241 +-Problem: Crash when setting 'buftype' to "quickfix". +-Solution: Check that error list is not NULL. (closes #5613) +-Files: src/quickfix.c, src/testdir/test_quickfix.vim +- +-Patch 8.2.0242 +-Problem: Preview popup window test fails with long directory name. (Jakub +- KądzioƂka) +-Solution: Use "silent cd". (closes #5615) +-Files: src/testdir/test_popupwin.vim +- +-Patch 8.2.0243 +-Problem: Insufficient code coverage for ex_docmd.c functions. +-Solution: Add more tests. (Yegappan Lakshmanan, closes #5618) +-Files: src/testdir/Make_all.mak, src/testdir/test_arglist.vim, +- src/testdir/test_buffer.vim, src/testdir/test_cd.vim, +- src/testdir/test_cmdline.vim, src/testdir/test_ex_mode.vim, +- src/testdir/test_excmd.vim, src/testdir/test_mapping.vim, +- src/testdir/test_quickfix.vim, src/testdir/test_search.vim, +- src/testdir/test_sort.vim, src/testdir/test_source.vim, +- src/testdir/test_substitute.vim, src/testdir/test_undo.vim, +- src/testdir/test_vimscript.vim, src/testdir/test_window_cmd.vim, +- src/testdir/test_writefile.vim +- +-Patch 8.2.0244 +-Problem: Compiler warning in Lua interface. +-Solution: Add type cast. (Ken Takata, closes #5621) +-Files: src/if_lua.c +- +-Patch 8.2.0245 +-Problem: MSVC: error message if the auto directory already exists. +-Solution: Add "if not exists". (Ken Takata, closes #5620) +-Files: src/Make_mvc.mak +- +-Patch 8.2.0246 +-Problem: MSVC: deprecation warnings with Ruby. +-Solution: Move _CRT_SECURE_NO_DEPRECATE to build file. (Ken Takata, +- closes #5622) +-Files: src/Make_mvc.mak, src/if_ruby.c, src/os_win32.h, src/vim.h, +- src/vimio.h +- +-Patch 8.2.0247 +-Problem: Misleading comment in NSIS installer script. +-Solution: Negate the meaning of the comment. (Ken Takata, closes #5627) +-Files: nsis/gvim.nsi +- +-Patch 8.2.0248 +-Problem: MS-Windows: dealing with deprecation is too complicated. +-Solution: Use io.h directly. Move _CRT_SECURE_NO_DEPRECATE to the build +- file. Suppress C4091 warning by setting "_WIN32_WINNT". (Ken +- Takata, closes #5626) +-Files: src/Make_mvc.mak, src/dosinst.h, src/vim.h, src/vimio.h, +- src/winclip.c, Filelist +- +-Patch 8.2.0249 +-Problem: MS-Windows: various warnings. +-Solution: Set the charset to utf-8. Add _WIN32_WINNT and _USING_V110_SDK71_. +- (Ken Takata, closes #5625) +-Files: src/GvimExt/Makefile, src/Make_mvc.mak +- +-Patch 8.2.0250 +-Problem: test_clear_search_pat() is unused. +-Solution: Remove the function. (Yegappan Lakshmanan, closes #5624) +-Files: runtime/doc/eval.txt, runtime/doc/testing.txt, +- runtime/doc/usr_41.txt, src/evalfunc.c, src/proto/regexp.pro, +- src/proto/search.pro, src/proto/testing.pro, src/regexp.c, +- src/search.c, src/testdir/test_writefile.vim, src/testing.c +- +-Patch 8.2.0251 +-Problem: A couple of function return types can be more specific. +-Solution: Use a better return type. (Ken Takata, closes #5629) +-Files: src/evalfunc.c, src/globals.h +- +-Patch 8.2.0252 +-Problem: Windows compiler warns for using size_t. +-Solution: Change to int. (Mike Williams) +-Files: src/vim9compile.c +- +-Patch 8.2.0253 +-Problem: Crash when using :disassemble without argument. (Dhiraj Mishra) +-Solution: Check for missing argument. (Dominique PellĂ©, closes #5635, +- closes #5637) +-Files: src/vim9execute.c, src/testdir/test_vim9_disassemble.vim, +- src/ex_cmds.h +- +-Patch 8.2.0254 +-Problem: Compiler warning for checking size_t to be negative. +-Solution: Only check for zero. (Zoltan Arpadffy) +-Files: src/vim9compile.c +- +-Patch 8.2.0255 +-Problem: VMS: missing files in build. +-Solution: Add the files. (Zoltan Arpadffy) +-Files: src/Make_vms.mms +- +-Patch 8.2.0256 +-Problem: Time and timer related code is spread out. +-Solution: Move time and timer related code to a new file. (Yegappan +- Lakshmanan, closes #5604) +-Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak, +- src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md, +- src/evalfunc.c, src/ex_cmds.c, src/ex_cmds2.c, src/main.c, +- src/memline.c, src/misc1.c, src/misc2.c, src/proto.h, +- src/proto/ex_cmds.pro, src/proto/ex_cmds2.pro, src/proto/main.pro, +- src/proto/memline.pro, src/proto/misc1.pro, src/proto/misc2.pro, +- src/proto/time.pro, src/time.c +- +-Patch 8.2.0257 +-Problem: Cannot recognize a terminal in a popup window. +-Solution: Add the win_gettype() function. +-Files: runtime/doc/eval.txt, src/evalfunc.c, src/evalwindow.c, +- src/proto/evalwindow.pro, src/testdir/test_cmdline.vim, +- src/testdir/test_terminal.vim, +- src/testdir/dumps/Test_terminal_popup_1.dump +- +-Patch 8.2.0258 +-Problem: ModifyOtherKeys cannot be temporarily disabled. +-Solution: Add echoraw() with an example for modifyOtherKeys. +-Files: runtime/doc/eval.txt, src/evalfunc.c, +- src/testdir/test_functions.vim, +- src/testdir/dumps/Test_functions_echoraw.dump +- +-Patch 8.2.0259 +-Problem: Terminal in popup test sometimes fails. +-Solution: Clear the command line. +-Files: src/testdir/test_terminal.vim, +- src/testdir/dumps/Test_terminal_popup_1.dump +- +-Patch 8.2.0260 +-Problem: Several lines of code are duplicated. +-Solution: Move duplicated code to a function. (Yegappan Lakshmanan, +- closes #5330) +-Files: src/option.c, src/os_unix.c, src/os_win32.c, src/proto/term.pro, +- src/quickfix.c, src/regexp.c, src/regexp_bt.c, src/regexp_nfa.c, +- src/term.c +- +-Patch 8.2.0261 +-Problem: Some code not covered by tests. +-Solution: Add test cases. (Yegappan Lakshmanan, closes #5645) +-Files: src/testdir/test_buffer.vim, src/testdir/test_cmdline.vim, +- src/testdir/test_exists.vim, src/testdir/test_filechanged.vim, +- src/testdir/test_fileformat.vim, src/testdir/test_mapping.vim, +- src/testdir/test_marks.vim, src/testdir/test_normal.vim, +- src/testdir/test_plus_arg_edit.vim, src/testdir/test_quickfix.vim, +- src/testdir/test_tabpage.vim, src/testdir/test_visual.vim, +- src/testdir/test_window_cmd.vim, src/testdir/test_writefile.vim +- +-Patch 8.2.0262 (after 8.2.0261) +-Problem: Fileformat test fails on MS-Windows. +-Solution: Set fileformat of buffer. +-Files: src/testdir/test_fileformat.vim +- +-Patch 8.2.0263 +-Problem: A few new Vim9 messages are not localized. +-Solution: Add the gettext wrapper. (Dominique PellĂ©, closes #5647) +-Files: src/vim9compile.c, src/vim9execute.c +- +-Patch 8.2.0264 (after 8.2.0262) +-Problem: Fileformat test still fails on MS-Windows. +-Solution: Set fileformat of buffer in the right place. +-Files: src/testdir/test_fileformat.vim +- +-Patch 8.2.0265 +-Problem: "eval" after "if 0" doesn't check for following command. +-Solution: Add "eval" to list of commands that check for a following command. +- (closes #5640) +-Files: src/ex_docmd.c, src/testdir/test_expr.vim +- +-Patch 8.2.0266 +-Problem: Terminal in popup test sometimes fails on Mac. +-Solution: Add a short delay. +-Files: src/testdir/test_terminal.vim +- +-Patch 8.2.0267 +-Problem: No check for a following command when calling a function fails. +-Solution: Also check for a following command when inside a try block. +- (closes #5642) +-Files: src/userfunc.c, src/testdir/test_user_func.vim +- +-Patch 8.2.0268 (after 8.2.0267) +-Problem: Trycatch test fails. +-Solution: When calling function fails only check for following command, do +- not give another error. +-Files: src/userfunc.c +- +-Patch 8.2.0269 +-Problem: Vim9: operator after list index does not work. (Yasuhiro +- Matsumoto) +-Solution: After indexing a list change the type to the list member type. +- (closes #5651) +-Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim +- +-Patch 8.2.0270 +-Problem: Some code not covered by tests. +-Solution: Add test cases. (Yegappan Lakshmanan, closes #5649) +-Files: src/testdir/test_autocmd.vim, src/testdir/test_buffer.vim, +- src/testdir/test_edit.vim, src/testdir/test_ex_mode.vim, +- src/testdir/test_excmd.vim, src/testdir/test_expand.vim, +- src/testdir/test_filetype.vim, src/testdir/test_findfile.vim, +- src/testdir/test_join.vim, src/testdir/test_move.vim, +- src/testdir/test_normal.vim, src/testdir/test_registers.vim, +- src/testdir/test_source.vim, src/testdir/test_tabpage.vim, +- src/testdir/test_tagjump.vim, src/testdir/test_vimscript.vim, +- src/testdir/test_visual.vim, src/testdir/test_window_cmd.vim, +- src/testdir/test_writefile.vim +- +-Patch 8.2.0271 +-Problem: The "num64" feature is available everywhere and building without +- it causes problems. +-Solution: Graduate the "num64" feature. (James McCoy, closes #5650) +-Files: src/evalfunc.c, src/feature.h, src/message.c, src/structs.h, +- src/testdir/test_expr.vim, src/testdir/test_largefile.vim, +- src/testdir/test_sort.vim, src/testdir/test_vimscript.vim, +- src/version.c +- +-Patch 8.2.0272 +-Problem: ":helptags ALL" gives error for directories without write +- permission. (Matěj Cepl) +-Solution: Ignore errors for ":helptags ALL". (Ken Takata, closes #5026, +- closes #5652) +-Files: src/ex_cmds.c, src/testdir/test_help.vim +- +-Patch 8.2.0273 +-Problem: MS-Windows uninstall may delete wrong batch file. +-Solution: Add specific marker in the generated batch file. (Ken Takata, +- closes #5654) +-Files: src/Make_mvc.mak, src/dosinst.c, src/dosinst.h, src/uninstall.c +- +-Patch 8.2.0274 +-Problem: Hang with combination of feedkeys(), Ex mode and :global. +- (Yegappan Lakshmanan) +-Solution: Add the pending_exmode_active flag. +-Files: src/ex_docmd.c, src/globals.h, src/getchar.c, +- src/testdir/test_ex_mode.vim +- +-Patch 8.2.0275 +-Problem: Some Ex code not covered by tests. +-Solution: Add test cases. (Yegappan Lakshmanan, closes #5659) +-Files: src/testdir/test_arglist.vim, src/testdir/test_autocmd.vim, +- src/testdir/test_excmd.vim, src/testdir/test_quickfix.vim, +- src/testdir/test_search.vim, src/testdir/test_swap.vim, +- src/testdir/test_window_cmd.vim +- +-Patch 8.2.0276 +-Problem: Vim9: not allowing space before ")" in function call is too +- restrictive. (Ben Jackson) +-Solution: Skip space before the ")". Adjust other space checks. +-Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim +- +-Patch 8.2.0277 +-Problem: Vim9: not all instructions covered by tests. +-Solution: Add more test cases. +-Files: src/testdir/test_vim9_disassemble.vim +- +-Patch 8.2.0278 +-Problem: Channel test is flaky on Mac. +-Solution: Reset variable before sending message. +-Files: src/testdir/test_channel.vim +- +-Patch 8.2.0279 +-Problem: Vim9: no test for deleted :def function. +-Solution: Add a test. Clear uf_cleared flag when redefining a function. +-Files: src/userfunc.c, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0280 +-Problem: Vim9: throw in :def function not caught higher up. +-Solution: Set "need_rethrow". +-Files: src/vim9execute.c, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0281 +-Problem: Two placed signs in the same line are not combined. E.g. in the +- terminal debugger a breakpoint and the PC cannot be both be +- displayed. +-Solution: Combine the sign column and line highlight attributes. +-Files: src/sign.c, src/testdir/test_signs.vim, +- src/testdir/dumps/Test_sign_cursor_3.dump, +- src/testdir/dumps/Test_sign_cursor_4.dump +- +-Patch 8.2.0282 +-Problem: Vim9: setting number option not tested. +-Solution: Add more tests. Fix assigning to global variable. +-Files: src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim, +- src/vim9execute.c +- +-Patch 8.2.0283 +-Problem: Vim9: failing to load script var not tested. +-Solution: Add more tests. Fix using s: in old script. +-Files: src/testdir/test_vim9_expr.vim, src/vim9compile.c, +- src/testdir/test_vim9_script.vim +- +-Patch 8.2.0284 +-Problem: Vim9: assignment test fails. +-Solution: Avoid duplicating "s:". +-Files: src/vim9compile.c +- +-Patch 8.2.0285 +-Problem: Unused error message. Cannot create s:var. +-Solution: Remove the error message. Make assignment to s:var work. +-Files: src/vim9compile.c, src/vim9execute.c, +- src/testdir/test_vim9_script.vim +- +-Patch 8.2.0286 +-Problem: Cannot use popup_close() for a terminal popup. +-Solution: Allow using popup_close(). (closes #5666) +-Files: src/popupwin.c, runtime/doc/popup.txt, +- src/testdir/test_terminal.vim, +- src/testdir/dumps/Test_terminal_popup_5.dump, +- src/testdir/dumps/Test_terminal_popup_6.dump +- +-Patch 8.2.0287 +-Problem: Vim9: return in try block not tested; catch with pattern not +- tested. +-Solution: Add tests. Make it work. +-Files: src/vim9execute.c, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0288 +-Problem: Vim9: some float and blob operators not tested. +-Solution: Add float and blob tests. Fix addition. +-Files: src/testdir/test_vim9_expr.vim, src/vim9compile.c +- +-Patch 8.2.0289 +-Problem: Vim9: :echo did not clear the rest of the line. +-Solution: Call msg_clr_eos(). (Ken Takata, closes #5668) +-Files: src/vim9execute.c +- +-Patch 8.2.0290 +-Problem: Running individual test differs from all tests. +-Solution: Pass on environment variables. (Yee Cheng Chin, closes #5672) +-Files: src/testdir/Makefile, src/testdir/README.txt +- +-Patch 8.2.0291 +-Problem: Vim9: assigning [] to list doesn't work. +-Solution: Use void for empty list and dict. (Ken Takata, closes #5669) +-Files: src/vim9compile.c, src/globals.h, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0292 +-Problem: Vim9: CHECKNR and CHECKTYPE instructions not tested. +-Solution: Add tests. +-Files: src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0293 +-Problem: Various Ex commands not sufficiently tested. +-Solution: Add more test cases. (Yegappan Lakshmanan, closes #5673) +-Files: src/testdir/test_arglist.vim, src/testdir/test_cmdline.vim, +- src/testdir/test_ex_mode.vim, src/testdir/test_excmd.vim, +- src/testdir/test_expand.vim, src/testdir/test_filetype.vim, +- src/testdir/test_filter_cmd.vim, src/testdir/test_global.vim, +- src/testdir/test_normal.vim, src/testdir/test_plus_arg_edit.vim, +- src/testdir/test_quickfix.vim, src/testdir/test_trycatch.vim, +- src/testdir/test_vimscript.vim +- +-Patch 8.2.0294 +-Problem: Cannot use Ex command that is also a function name. +-Solution: Recognize an Ex command by a colon prefix. +-Files: src/vim9compile.c, src/testdir/test_vim9_script.vim, +- runtime/doc/vim9.txt +- +-Patch 8.2.0295 +-Problem: Highlighting for :s wrong when using different separator. +-Solution: Use separate argument for search direction and separator. (Rob +- Pilling, closes #5665) +-Files: src/ex_docmd.c, src/ex_getln.c, src/gui.c, src/normal.c, +- src/proto/search.pro, src/quickfix.c, src/search.c, src/spell.c, +- src/tag.c, src/testdir/dumps/Test_incsearch_substitute_15.dump, +- src/testdir/test_search.vim +- +-Patch 8.2.0296 +-Problem: Mixing up "long long" and __int64 may cause problems. (John +- Marriott) +-Solution: Pass varnumber_T to vim_snprintf(). Add v:numbersize. +-Files: src/message.c, src/eval.c, src/fileio.c, src/json.c, src/ops.c, +- src/vim.h, src/structs.h, src/evalvars.c, runtime/doc/eval.txt, +- runtime/doc/various.txt, src/testdir/test_eval_stuff.vim +- +-Patch 8.2.0297 +-Problem: Compiler warnings for the Ruby interface. +-Solution: Undefine a few macros, fix initialization. (Ozaki Kiichi, +- closes #5677) +-Files: src/if_ruby.c +- +-Patch 8.2.0298 +-Problem: Vim9 script: cannot start command with a string constant. +-Solution: Recognize expression starting with '('. +-Files: src/ex_docmd.c, src/vim9compile.c, +- src/testdir/test_vim9_script.vim, runtime/doc/vim9.txt +- +-Patch 8.2.0299 +-Problem: Vim9: ISN_STORE with argument not tested. Some cases in tv2bool() +- not tested. +-Solution: Add tests. Add test_unknown() and test_void(). +-Files: src/testing.c, src/proto/testing.pro, src/evalfunc.c, +- src/testdir/test_vim9_disassemble.vim, +- src/testdir/test_vim9_expr.vim, runtime/doc/eval.txt, +- runtime/doc/testing.txt +- +-Patch 8.2.0300 +-Problem: Vim9: expression test fails without channel support. +-Solution: Add has('channel') check. +-Files: src/testdir/test_vim9_expr.vim +- +-Patch 8.2.0301 +-Problem: Insufficient testing for exception handling and the "attention" +- prompt. +-Solution: Add test cases. (Yegappan Lakshmanan, closes #5681) +-Files: src/testdir/test_swap.vim, src/testdir/test_trycatch.vim +- +-Patch 8.2.0302 +-Problem: Setting 'term' may cause error in TermChanged autocommand. +-Solution: Use aucmd_prepbuf() to switch to the buffer where the autocommand +- is to be executed. (closes #5682) +-Files: src/term.c, src/testdir/test_autocmd.vim +- +-Patch 8.2.0303 +-Problem: TermChanged test fails in the GUI. +-Solution: Skip the test when running the GUI. +-Files: src/testdir/test_autocmd.vim +- +-Patch 8.2.0304 +-Problem: Terminal test if failing on some systems. +-Solution: Wait for the job to finish. (James McCoy) +-Files: src/testdir/test_terminal.vim +- +-Patch 8.2.0305 +-Problem: Relativenumber test fails on some systems. (James McCoy) +-Solution: Clear the command line. +-Files: src/testdir/test_number.vim, +- src/testdir/dumps/Test_relnr_colors_2.dump, +- src/testdir/dumps/Test_relnr_colors_3.dump +- +-Patch 8.2.0306 +-Problem: Vim9: :substitute(pat(repl does not work in Vim9 script. +-Solution: Remember starting with a colon. (closes #5676) +-Files: src/ex_docmd.c, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0307 +-Problem: Python 3 vim.eval not well tested. +-Solution: Add a test. (Dominique PellĂ©, closes #5680) +-Files: src/testdir/test_python3.vim +- +-Patch 8.2.0308 +-Problem: 'showbreak' does not work for a very long line. (John Little) +-Solution: Check whether 'briopt' contains "sbr". (Ken Takata, closes #5523, +- closes #5684) +-Files: src/drawline.c, src/testdir/test_breakindent.vim +- +-Patch 8.2.0309 +-Problem: Window-local values have confusing name. +-Solution: Rename w_p_bri* to w_briopt_*. +-Files: src/structs.h, src/indent.c, src/drawline.c +- +-Patch 8.2.0310 +-Problem: Autocmd test fails on a slow system. +-Solution: Adjust the expectations. (James McCoy, closes #5685) +-Files: src/testdir/test_autocmd.vim +- +-Patch 8.2.0311 +-Problem: Vim9: insufficient script tests. +-Solution: Add tests. Free imports when re-using a script. +-Files: src/testdir/test_vim9_script.vim, src/scriptfile.c +- +-Patch 8.2.0312 +-Problem: Vim9: insufficient script tests. +-Solution: Add more tests. Make "import * as Name" work. +-Files: src/testdir/test_vim9_script.vim, src/vim9script.c, +- src/proto/vim9script.pro, src/vim9compile.c +- +-Patch 8.2.0313 +-Problem: Vim9: insufficient script tests. +-Solution: Add tests. Make import of alphanumeric name work. +-Files: src/testdir/test_vim9_script.vim, src/vim9script.c +- +-Patch 8.2.0314 +-Problem: Short name not set for terminal buffer. +-Solution: Set the short name. (closes #5687) +-Files: src/terminal.c, src/testdir/test_terminal.vim +- +-Patch 8.2.0315 +-Problem: Build failure on HP-UX system. +-Solution: Use LONG_LONG_MIN instead of LLONG_MIN. Add type casts for switch +- statement. (John Marriott) +-Files: src/structs.h, src/json.c +- +-Patch 8.2.0316 +-Problem: ex_getln.c code has insufficient test coverage. +-Solution: Add more tests. Fix a problem. (Yegappan Lakshmanan, closes #5693) +-Files: src/cmdhist.c, src/testdir/test_cmdline.vim, +- src/testdir/test_functions.vim, src/testdir/test_history.vim, +- src/testdir/test_menu.vim +- +-Patch 8.2.0317 +-Problem: MSVC: _CRT_SECURE_NO_DEPRECATE not defined on DEBUG build. +-Solution: Move where CFLAGS is updated. (Ken Takata, closes #5692) +-Files: src/Make_mvc.mak +- +-Patch 8.2.0318 +-Problem: Vim9: types not sufficiently tested. +-Solution: Add tests with more types. +-Files: src/globals.h, src/vim9compile.c, +- src/testdir/test_vim9_script.vim, src/testdir/test_vim9_expr.vim +- +-Patch 8.2.0319 +-Problem: File missing in distribution, comments outdated. +-Solution: Correct path of README file. Update comments. +-Files: Filelist, src/evalvars.c, src/register.c, src/if_python3.c +- +-Patch 8.2.0320 +-Problem: No Haiku support. +-Solution: Add support for Haiku. (Emir Sarı, closes #5605) +-Files: Filelist, runtime/doc/Makefile, runtime/doc/eval.txt, +- runtime/doc/gui.txt, runtime/doc/help.txt, +- runtime/doc/options.txt, runtime/doc/os_haiku.txt, +- runtime/doc/starting.txt, runtime/doc/tags, +- runtime/gvimrc_example.vim, runtime/vimrc_example.vim, +- src/INSTALL, src/Makefile, src/auto/configure, src/configure.ac, +- src/evalfunc.c, src/feature.h, src/fileio.c, src/globals.h, +- src/gui.c, src/gui.h, src/gui_haiku.cc, src/gui_haiku.h, +- src/mbyte.c, src/menu.c, src/misc1.c, src/mouse.c, src/option.h, +- src/os_haiku.h, src/os_haiku.rdef, src/os_unix.c, src/os_unix.h, +- src/osdef1.h.in, src/proto.h, src/proto/gui_haiku.pro, src/pty.c, +- src/screen.c, src/structs.h, src/term.c, src/version.c, src/vim.h +- +-Patch 8.2.0321 +-Problem: Vim9: ":execute" does not work yet. +-Solution: Add ISN_EXECUTE. (closes #5699) Also make :echo work with more +- than one argument. +-Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c, +- src/testdir/test_vim9_disassemble.vim, +- src/testdir/test_vim9_script.vim +- +-Patch 8.2.0322 +-Problem: Vim9: error checks not tested. +-Solution: Add more test cases. Avoid error for function loaded later. +-Files: src/vim9compile.c, src/evalvars.c, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0323 +-Problem: Vim9: calling a function that is defined later is slow. +-Solution: Once the function is found update the instruction so it can be +- called directly. +-Files: src/vim9execute.c, src/testdir/test_vim9_script.vim, +- src/testdir/test_vim9_disassemble.vim +- +-Patch 8.2.0324 +-Problem: Text property not updated correctly when inserting/deleting. +-Solution: Use the right column when deleting. Make zero-width text +- properties respect start_incl and end_incl. (Axel Forsman, +- closes #5696, closes #5679) +-Files: src/change.c, src/textprop.c, src/testdir/test_listener.vim, +- src/testdir/test_textprop.vim +- +-Patch 8.2.0325 +-Problem: Ex_getln.c code not covered by tests. +-Solution: Add a few more tests. (Yegappan Lakshmanan, closes #5702) +-Files: src/testdir/test_cmdline.vim, src/testdir/test_ex_mode.vim, +- src/testdir/test_functions.vim, src/testdir/test_history.vim, +- src/testdir/test_options.vim +- +-Patch 8.2.0326 +-Problem: Compiler warning for using uninitialized variable. (Yegappan +- Lakshmanan) +-Solution: Do not jump to failed but return. +-Files: src/vim9execute.c +- +-Patch 8.2.0327 +-Problem: Crash when opening and closing two popup terminal windows. +-Solution: Check that prevwin is valid. (closes #5707) +-Files: src/popupwin.c, src/testdir/test_terminal.vim +- +-Patch 8.2.0328 +-Problem: No redraw when leaving terminal-normal mode in a terminal popup +- window. +-Solution: Redraw the popup window. (closes #5708) +-Files: src/macros.h, src/vim.h, src/terminal.c, src/drawscreen.c, +- src/move.c, src/popupwin.c, src/testdir/test_terminal.vim, +- src/testdir/dumps/Test_terminal_popup_7.dump, +- src/testdir/dumps/Test_terminal_popup_8.dump +- +-Patch 8.2.0329 +-Problem: Popup filter converts 0x80 bytes. +-Solution: Keep 0x80 bytes as-is. (Ozaki Kiichi, closes #5706) +-Files: src/popupwin.c, src/testdir/test_popupwin.vim +- +-Patch 8.2.0330 +-Problem: Build error with popup window but without terminal. +-Solution: Add #ifdef. +-Files: src/popupwin.c +- +-Patch 8.2.0331 +-Problem: Internal error when using test_void() and test_unknown(). +- (Dominique PellĂ©) +-Solution: Give a normal error. +-Files: src/evalfunc.c, src/testdir/test_functions.vim, +- src/testdir/test_vimscript.vim +- +-Patch 8.2.0332 +-Problem: Some code in ex_getln.c not covered by tests. +-Solution: Add a few more tests. (Yegappan Lakshmanan, closes #5710) +-Files: src/testdir/test_arabic.vim, src/testdir/test_cmdline.vim +- +-Patch 8.2.0333 +-Problem: Terminal in popup test is flaky. +-Solution: Make sure redraw is done before opening the popup. +-Files: src/testdir/test_terminal.vim, +- src/testdir/dumps/Test_terminal_popup_1.dump +- +-Patch 8.2.0334 +-Problem: Abort called when using test_void(). (Dominique PellĂ©) +-Solution: Only give an error, don't abort. +-Files: src/message.c, src/proto/message.pro, src/evalfunc.c, +- src/eval.c, src/json.c, src/testdir/test_functions.vim +- +-Patch 8.2.0335 +-Problem: No completion for :disassemble. +-Solution: Make completion work. Also complete script-local functions if the +- name starts with "s:". +-Files: src/cmdexpand.c, src/testdir/test_cmdline.vim, +- runtime/doc/vim9.txt +- +-Patch 8.2.0336 +-Problem: Vim9: insufficient test coverage for compiling. +-Solution: Add more tests. +-Files: src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim, +- src/vim9.h, src/vim9compile.c, src/vim9execute.c +- +-Patch 8.2.0337 +-Problem: Build fails on a few systems. +-Solution: Use vim_snprintf() instead of snprintf(). +-Files: src/cmdexpand.c +- +-Patch 8.2.0338 +-Problem: Build failure without the channel feature. +-Solution: Add #ifdef +-Files: src/vim9compile.c +- +-Patch 8.2.0339 +-Problem: Vim9: function return type may depend on arguments. +-Solution: Instead of a fixed return type use a function to figure out the +- return type. +-Files: src/evalfunc.c, src/proto/evalfunc.pro, src/vim9compile.c, +- src/evalbuffer.c, src/proto/evalbuffer.pro, +- src/testdir/test_vim9_script.vim +- +-Patch 8.2.0340 +-Problem: Vim9: function and partial types not tested. +-Solution: Support more for partial, add tests. +-Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c, +- src/testdir/test_vim9_script.vim +- +-Patch 8.2.0341 +-Problem: Using ":for" in Vim9 script gives an error. +-Solution: Pass the LET_NO_COMMAND flag. (closes #5715) +-Files: src/eval.c, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0342 +-Problem: Some code in ex_getln.c not covered by tests. +-Solution: Add more tests. (Yegappan Lakshmanan, closes #5717) +-Files: src/testdir/test_cmdline.vim, src/testdir/test_ex_mode.vim, +- src/testdir/test_history.vim, src/testdir/test_iminsert.vim +- +-Patch 8.2.0343 +-Problem: Vim9: using wrong instruction, limited test coverage. +-Solution: Use ISN_PUSHJOB. Add a few more tests. +-Files: src/vim9compile.c, src/vim9execute.c, +- src/testdir/test_vim9_script.vim, +- src/testdir/test_vim9_disassemble.vim +- +-Patch 8.2.0344 +-Problem: ":def" not skipped properly. +-Solution: Add CMD_def to list of commands the require evaluation even when +- not being executed. +-Files: src/ex_docmd.c +- +-Patch 8.2.0345 +-Problem: Compiler warning when building without the float feature. +-Solution: Add #ifdef. (John Marriott) +-Files: src/evalfunc.c +- +-Patch 8.2.0346 +-Problem: Vim9: finding common list type not tested. +-Solution: Add more tests. Fix listing function. Fix overwriting type. +-Files: src/vim9compile.c, src/userfunc.c, +- src/testdir/test_vim9_script.vim, src/testdir/runtest.vim, +- src/testdir/test_vim9_disassemble.vim +- +-Patch 8.2.0347 +-Problem: Various code not covered by tests. +-Solution: Add more test coverage. (Yegappan Lakshmanan, closes #5720) +-Files: src/testdir/gen_opt_test.vim, src/testdir/test86.in, +- src/testdir/test_cmdline.vim, src/testdir/test_digraph.vim, +- src/testdir/test_ex_mode.vim, src/testdir/test_history.vim +- +-Patch 8.2.0348 +-Problem: Vim9: not all code tested. +-Solution: Add a few more tests. fix using "b:" in literal dictionary. +-Files: src/testdir/test_vim9_expr.vim, src/vim9compile.c, +- src/proto/vim9compile.pro, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0349 +-Problem: Vim9: constant expression not well tested. +-Solution: Add tests for "if" with constant expression. +-Files: src/testdir/test_vim9_script.vim +- +-Patch 8.2.0350 +-Problem: Vim9: expression tests don't use recognized constants. +-Solution: Recognize "true" and "false" as constants. Make skipping work for +- assignment and expression evaluation. +-Files: src/vim9compile.c +- +-Patch 8.2.0351 +-Problem: Terminal in popup test is still a bit flaky. +-Solution: Clear and redraw before opening the popup. +-Files: src/testdir/test_terminal.vim +- +-Patch 8.2.0352 +-Problem: FreeBSD: test for sourcing utf-8 is skipped. +-Solution: Run the matchadd_conceal test separately to avoid that setting +- 'term' to "ansi" causes problems for other tests. (Ozaki Kiichi, +- closes #5721) +-Files: src/testdir/Make_all.mak, src/testdir/test_alot_utf8.vim, +- src/testdir/test_source_utf8.vim +- +-Patch 8.2.0353 +-Problem: Vim9: while loop not tested. +-Solution: Add test with "while", "break" and "continue" +-Files: src/testdir/test_vim9_script.vim +- +-Patch 8.2.0354 +-Problem: Python 3.9 does not define _Py_DEC_REFTOTAL. (Zdenek Dohnal) +-Solution: Remove it, it was only for debugging. +-Files: src/if_python3.c +- +-Patch 8.2.0355 +-Problem: Vim9: str_val is confusing, it's a number +-Solution: Rename to stnr_val. +-Files: src/vim9.h, src/vim9compile.c, src/vim9execute.c +- +-Patch 8.2.0356 +-Problem: MS-Windows: feedkeys() with VIMDLL cannot handle CSI correctly. +-Solution: Modify mch_inchar() to encode CSI bytes. (Ozaki Kiichi, Ken +- Takata, closes #5726) +-Files: src/getchar.c, src/os_win32.c, src/testdir/test_popupwin.vim +- +-Patch 8.2.0357 +-Problem: Cannot delete a text property matching both id and type. (Axel +- Forsman) +-Solution: Add the "both" argument. +-Files: src/textprop.c, runtime/doc/textprop.txt, +- src/testdir/test_textprop.vim +- +-Patch 8.2.0358 +-Problem: Insufficient testing for indent.c. +-Solution: Add indent tests. (Yegappan Lakshmanan, closes #5736) +-Files: src/testdir/Make_all.mak, src/testdir/test_ex_mode.vim, +- src/testdir/test_expand_func.vim, src/testdir/test_indent.vim, +- src/testdir/test_lispwords.vim, src/testdir/test_smartindent.vim, +- src/testdir/test_vartabs.vim +- +-Patch 8.2.0359 +-Problem: popup_atcursor() may hang. (Yasuhiro Matsumoto) +-Solution: Take the decoration into account. (closes #5728) +-Files: src/popupwin.c, src/testdir/test_popupwin.vim +- +-Patch 8.2.0360 +-Problem: Yaml files are only recognized by the file extension. +-Solution: Check for a line starting with "%YAML". (Jason Franklin) +-Files: runtime/scripts.vim, src/testdir/test_filetype.vim +- +-Patch 8.2.0361 +-Problem: Internal error when using "0" for a callback. +-Solution: Give a normal error. (closes #5743) +-Files: src/evalvars.c, src/testdir/test_timers.vim +- +-Patch 8.2.0362 +-Problem: MS-Windows: channel test fails if grep is not available. +-Solution: Use another command. (Ken Takata, closes #5739) +-Files: src/testdir/test_channel.vim +- +-Patch 8.2.0363 +-Problem: Some Normal mode commands not tested. +-Solution: Add more tests. (Yegappan Lakshmanan, closes #5746) +-Files: src/testdir/test_cindent.vim, src/testdir/test_cmdline.vim, +- src/testdir/test_edit.vim, src/testdir/test_indent.vim, +- src/testdir/test_normal.vim, src/testdir/test_prompt_buffer.vim, +- src/testdir/test_virtualedit.vim, src/testdir/test_visual.vim +- +-Patch 8.2.0364 +-Problem: Printf test failing on Haiku. +-Solution: Make a difference between int and short. (Dominique PellĂ©, +- closes #5749) +-Files: src/message.c +- +-Patch 8.2.0365 +-Problem: Tag kind can't be a multibyte character. (Marcin Szamotulski) +-Solution: Recognize multibyte character. (closes #5724) +-Files: src/tag.c, src/testdir/test_taglist.vim +- +-Patch 8.2.0366 +-Problem: Hardcopy command not tested enough. +-Solution: Add tests for printing. (Dominique PellĂ©, closes #5748) +-Files: src/testdir/test_hardcopy.vim +- +-Patch 8.2.0367 +-Problem: Can use :pedit in a popup window. +-Solution: Disallow it. +-Files: src/ex_docmd.c, src/testdir/test_popupwin.vim +- +-Patch 8.2.0368 +-Problem: Vim9: import that redefines local variable does not fail. +-Solution: Check for already defined symbols. +-Files: src/vim9script.c, src/proto/vim9script.pro, src/vim9compile.c, +- src/proto/vim9compile.pro, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0369 +-Problem: Various Normal mode commands not fully tested. +-Solution: Add more tests. (Yegappan Lakshmanan, closes #5751) +-Files: src/testdir/test_arglist.vim, src/testdir/test_changelist.vim, +- src/testdir/test_charsearch.vim, src/testdir/test_cmdline.vim, +- src/testdir/test_edit.vim, src/testdir/test_ex_mode.vim, +- src/testdir/test_excmd.vim, src/testdir/test_gf.vim, +- src/testdir/test_iminsert.vim, src/testdir/test_increment.vim, +- src/testdir/test_marks.vim, src/testdir/test_normal.vim, +- src/testdir/test_prompt_buffer.vim, src/testdir/test_put.vim, +- src/testdir/test_registers.vim, src/testdir/test_tagjump.vim, +- src/testdir/test_visual.vim +- +-Patch 8.2.0370 +-Problem: The typebuf_was_filled flag is sometimes not reset, which may +- cause a hang. +-Solution: Make sure typebuf_was_filled is reset when the typeahead buffer is +- empty. +-Files: src/edit.c, src/getchar.c, +- +-Patch 8.2.0371 +-Problem: Crash with combination of terminal popup and autocmd. +-Solution: Disallow closing a popup that is the current window. Add a check +- that the current buffer is valid. (closes #5754) +-Files: src/macros.h, src/buffer.c, src/popupwin.c, src/terminal.c, +- src/testdir/test_terminal.vim +- +-Patch 8.2.0372 +-Problem: Prop_find() may not find text property at start of the line. +-Solution: Adjust the loop to find properties. (Axel Forsman, closes #5761, +- closes #5663) +-Files: src/textprop.c, src/testdir/test_textprop.vim +- +-Patch 8.2.0373 +-Problem: Type of term_sendkeys() is unknown. +-Solution: Just return zero. (closes #5762) +-Files: src/terminal.c, src/testdir/test_terminal.vim +- +-Patch 8.2.0374 +-Problem: Using wrong printf directive for jump location. +-Solution: Change "%lld" to "%d". (James McCoy, closes #5773) +-Files: src/vim9execute.c +- +-Patch 8.2.0375 +-Problem: Coverity warning for not using return value. +-Solution: Move error message to separate function. +-Files: src/popupwin.c +- +-Patch 8.2.0376 +-Problem: Nasty callback test fails on some systems. +-Solution: Increase the sleep time. +-Files: src/testdir/test_terminal.vim +- +-Patch 8.2.0377 +-Problem: No CI test for a big-endian system. +-Solution: Test with s390x. (James McCoy, closes #5772) +-Files: .travis.yml +- +-Patch 8.2.0378 +-Problem: prop_find() does not find all props. +-Solution: Check being in the start line. (Axel Forsman, closes #5776) +-Files: src/textprop.c, src/testdir/test_textprop.vim +- +-Patch 8.2.0379 +-Problem: Gcc warns for ambiguous else. +-Solution: Add braces. (Dominique PellĂ©, closes #5778) +-Files: src/textprop.c +- +-Patch 8.2.0380 +-Problem: Tiny popup when creating a terminal popup without minwidth. +-Solution: Use a default minimum size of 5 lines of 20 characters. +-Files: src/popupwin.c, src/testdir/test_terminal.vim, +- src/testdir/dumps/Test_terminal_popup_m1.dump +- +-Patch 8.2.0381 +-Problem: Using freed memory with :lvimgrep and autocommand. (extracted from +- POC by Dominique PellĂ©) +-Solution: Avoid deleting a dummy buffer used in a window. (closes #5777) +-Files: src/quickfix.c, src/testdir/test_quickfix.vim +- +-Patch 8.2.0382 +-Problem: Some tests fail when run under valgrind. +-Solution: Increase timeouts. +-Files: src/testdir/test_autocmd.vim, src/testdir/test_debugger.vim, +- src/testdir/test_channel.vim, src/testdir/test_ins_complete.vim, +- src/testdir/test_terminal.vim, +- src/testdir/dumps/Test_terminal_popup_1.dump, +- src/testdir/dumps/Test_terminal_popup_2.dump, +- src/testdir/dumps/Test_terminal_popup_3.dump, +- src/testdir/dumps/Test_terminal_popup_5.dump, +- src/testdir/dumps/Test_terminal_popup_6.dump, +- src/testdir/dumps/Test_terminal_popup_7.dump, +- src/testdir/dumps/Test_terminal_popup_8.dump, +- src/testdir/dumps/Test_terminal_popup_m1.dump +- +-Patch 8.2.0383 +-Problem: Wrong feature check causes test not to be run. +-Solution: Use CheckFunction instead of CheckFeature. (Ozaki Kiichi, +- closes #5781) +-Files: src/testdir/test_channel.vim +- +-Patch 8.2.0384 +-Problem: Travis CI has warnings. +-Solution: Avoid warnings, clean up the config. (Ozaki Kiichi, closes #5779) +-Files: .travis.yml +- +-Patch 8.2.0385 +-Problem: Menu functionality insufficiently tested. +-Solution: Add tests. Add menu_info(). (Yegappan Lakshmanan, closes #5760) +-Files: runtime/doc/eval.txt, runtime/doc/gui.txt, runtime/doc/usr_41.txt, +- src/evalfunc.c, src/menu.c, src/proto/menu.pro, +- src/testdir/test_menu.vim, src/testdir/test_popup.vim, +- src/testdir/test_termcodes.vim +- +-Patch 8.2.0386 (after 8.2.0385) +-Problem: Part from unfinished patch got included. +-Solution: Undo that part. +-Files: src/evalfunc.c +- +-Patch 8.2.0387 +-Problem: Error for possible NULL argument to qsort(). +-Solution: Don't call qsort() when there is nothing to sort. (Dominique +- PellĂ©, closes #5780) +-Files: src/spellsuggest.c +- +-Patch 8.2.0388 +-Problem: Printmbcharset option not tested. +-Solution: Add a test. Enable PostScript for AppVeyor build. (Dominique +- PellĂ©, closes #5783) +-Files: appveyor.yml, src/testdir/test_hardcopy.vim +- +-Patch 8.2.0389 +-Problem: Delayed redraw when shifting text from Insert mode. +-Solution: Use msg_attr_keep() instead of msg(). (closes #5782) +-Files: src/ops.c +- +-Patch 8.2.0390 +-Problem: Terminal postponed scrollback test is flaky. +-Solution: Add delay in between sending keys. Rename dump files. +-Files: src/testdir/test_terminal.vim, +- src/testdir/dumps/Test_terminal_01.dump, +- src/testdir/dumps/Test_terminal_02.dump, +- src/testdir/dumps/Test_terminal_03.dump, +- src/testdir/dumps/Test_terminal_scrollback_1.dump, +- src/testdir/dumps/Test_terminal_scrollback_2.dump, +- src/testdir/dumps/Test_terminal_scrollback_3.dump +- +-Patch 8.2.0391 (after 8.2.0377) +-Problem: CI test coverage dropped. +-Solution: Set $DISPLAY also for non-GUI builds. (James McCoy, closes #5788) +-Files: .travis.yml +- +-Patch 8.2.0392 +-Problem: Coverity warns for using array index out of range. +-Solution: Add extra "if" to avoid warning. +-Files: src/menu.c +- +-Patch 8.2.0393 +-Problem: Coverity warns for not using return value. +-Solution: Add (void). +-Files: src/popupmenu.c +- +-Patch 8.2.0394 +-Problem: Coverity complains about using NULL pointer. +-Solution: Use empty string when option value is NULL. +-Files: src/optionstr.c +- +-Patch 8.2.0395 +-Problem: Build fails with FEAT_EVAL but without FEAT_MENU. +-Solution: Add #ifdef. (John Marriott) +-Files: src/evalfunc.c +- +-Patch 8.2.0396 +-Problem: Cmdexpand.c insufficiently tested. +-Solution: Add more tests. (Yegappan Lakshmanan, closes #5789) +-Files: src/testdir/test_cmdline.vim, src/testdir/test_taglist.vim, +- src/testdir/test_terminal.vim, src/testdir/test_usercommands.vim +- +-Patch 8.2.0397 +-Problem: Delayed screen update when using undo from Insert mode. +-Solution: Update w_topline and cursor shape before sleeping. (closes #5790) +-Files: src/normal.c +- +-Patch 8.2.0398 +-Problem: Profile test fails when two functions take same time. +-Solution: Add a short sleep in once function. (closes #5797) +-Files: src/testdir/test_profile.vim +- +-Patch 8.2.0399 +-Problem: Various memory leaks. +-Solution: Avoid the leaks. (Ozaki Kiichi, closes #5803) +-Files: src/ex_docmd.c, src/ex_getln.c, src/menu.c, src/message.c, +- src/scriptfile.c, src/userfunc.c +- +-Patch 8.2.0400 +-Problem: Not all tests using a terminal are in the list of flaky tests. +-Solution: Introduce the test_is_flaky flag. +-Files: src/testdir/runtest.vim, src/testdir/term_util.vim, +- src/testdir/screendump.vim, src/testdir/test_autocmd.vim +- +-Patch 8.2.0401 +-Problem: Not enough test coverage for evalvars.c. +-Solution: Add more tests. (Yegappan Lakshmanan, closes #5804) +-Files: src/testdir/test_cmdline.vim, src/testdir/test_const.vim, +- src/testdir/test_diffmode.vim, src/testdir/test_excmd.vim, +- src/testdir/test_functions.vim, src/testdir/test_let.vim, +- src/testdir/test_listdict.vim, src/testdir/test_spell.vim, +- src/testdir/test_unlet.vim, src/testdir/test_user_func.vim, +- src/testdir/test_vimscript.vim +- +-Patch 8.2.0402 (after 8.2.0401) +-Problem: Setting local instead of global flag. +-Solution: Prepend "g:" to "test_is_flaky". +-Files: src/testdir/term_util.vim, src/testdir/screendump.vim, +- src/testdir/test_autocmd.vim +- +-Patch 8.2.0403 +-Problem: When 'buftype' is "nofile" there is no overwrite check. +-Solution: Also check for existing file when 'buftype' is set. +- (closes #5807) +-Files: src/ex_cmds.c, src/testdir/test_options.vim +- +-Patch 8.2.0404 +-Problem: Writefile() error does not give a hint. +-Solution: Add remark about first argument. +-Files: src/filepath.c, src/testdir/test_writefile.vim +- +-Patch 8.2.0405 +-Problem: MSVC: build fails with some combination of features. +-Solution: Enable CHANNEL if TERMINAL is enabled. (Mike Williams) +-Files: src/Make_mvc.mak +- +-Patch 8.2.0406 +-Problem: FileReadCmd event not well tested. +-Solution: Add a test. +-Files: src/testdir/test_autocmd.vim +- +-Patch 8.2.0407 +-Problem: No early check if :find and :sfind have an argument. +-Solution: Add EX_NEEDARG. +-Files: src/ex_cmds.h, src/testdir/test_findfile.vim, +- src/testdir/test_find_complete.vim +- +-Patch 8.2.0408 +-Problem: Delete() commented out for testing. +-Solution: Undo commenting-out. +-Files: src/testdir/test_vim9_disassemble.vim +- +-Patch 8.2.0409 +-Problem: Search test leaves file behind. +-Solution: Delete the file. Also use Check commands. +-Files: src/testdir/test_search.vim +- +-Patch 8.2.0410 +-Problem: Channel test fails too often on slow Mac. +-Solution: Increase waiting time to 10 seconds. +-Files: src/testdir/test_channel.vim +- +-Patch 8.2.0411 +-Problem: Mac: breakcheck is using a value from the stone ages. +-Solution: Delete BREAKCHECK_SKIP from the Mac header file. (Ben Jackson) +-Files: src/os_mac.h +- +-Patch 8.2.0412 +-Problem: MS-Windows: cannot use vimtutor from the start menu. +-Solution: Better check for writable directory. Use the right path for the +- executable. (Wu Yongwei, closes #5774, closes #5756) +-Files: vimtutor.bat +- +-Patch 8.2.0413 +-Problem: Buffer menu does not handle special buffers properly. +-Solution: Keep a dictionary with buffer names to reliably keep track of +- entries. +- Also trigger BufFilePre and BufFilePost for command-line and +- terminal buffers when the name changes. +-Files: src/testdir/test_alot.vim, src/testdir/Make_all.mak, +- runtime/menu.vim, src/ex_getln.c, src/terminal.c, +- src/testdir/test_menu.vim +- +-Patch 8.2.0414 +-Problem: Channel connect_waittime() test is flaky. +-Solution: Set the test_is_flaky flag. Use test_is_flaky for more tests. +-Files: src/testdir/test_channel.vim, src/testdir/test_terminal.vim, +- src/testdir/runtest.vim +- +-Patch 8.2.0415 +-Problem: Bsdl filetype is not detected. +-Solution: Add an entry in the filetype list. (Daniel Kho, closes #5810) +-Files: runtime/filetype.vim, src/testdir/test_filetype.vim +- +-Patch 8.2.0416 +-Problem: Test leaves file behind. +-Solution: Delete the file. +-Files: src/testdir/test_indent.vim +- +-Patch 8.2.0417 +-Problem: Travis CI config can be improved. +-Solution: Remove COVERAGE variable. Add load-snd-dummy script. add "-i NONE" +- to avoid messages about viminfo. (Ozaki Kiichi, closes #5813) +-Files: .travis.yml, ci/load-snd-dummy.sh +- +-Patch 8.2.0418 +-Problem: Code in eval.c not sufficiently covered by tests. +-Solution: Add more tests. (Yegappan Lakshmanan, closes #5815) +-Files: src/testdir/test_blob.vim, src/testdir/test_channel.vim, +- src/testdir/test_cmdline.vim, src/testdir/test_eval_stuff.vim, +- src/testdir/test_expr.vim, src/testdir/test_functions.vim, +- src/testdir/test_job_fails.vim, src/testdir/test_lambda.vim, +- src/testdir/test_let.vim, src/testdir/test_listdict.vim, +- src/testdir/test_marks.vim, src/testdir/test_method.vim, +- src/testdir/test_normal.vim, src/testdir/test_unlet.vim, +- src/testdir/test_usercommands.vim, src/testdir/test_vimscript.vim, +- src/testdir/test_window_cmd.vim +- +-Patch 8.2.0419 +-Problem: Various memory leaks in Vim9 script code. +-Solution: Fix the leaks. (Ozaki Kiichi, closes #5814) +-Files: src/proto/vim9compile.pro, src/scriptfile.c, src/structs.h, +- src/testdir/test_vim9_script.vim, src/vim9.h, src/vim9compile.c, +- src/vim9execute.c, src/vim9script.c +- +-Patch 8.2.0420 +-Problem: Vim9: cannot interrupt a loop with CTRL-C. +-Solution: Check for CTRL-C once in a while. Doesn't fully work yet. +-Files: src/misc1.c, src/proto/misc1.pro, +- src/testdir/test_vim9_script.vim +- +-Patch 8.2.0421 +-Problem: Interrupting with CTRL-C does not always work. +-Solution: Recognize CTRL-C while modifyOtherKeys is set. +-Files: src/ui.c, src/testdir/test_vim9_script.vim, src/evalfunc.c +- +-Patch 8.2.0422 +-Problem: Crash when passing popup window to win_splitmove(). (john Devin) +-Solution: Disallow moving a popup window. (closes #5816) +-Files: src/testdir/test_popupwin.vim, src/evalwindow.c +- +-Patch 8.2.0423 +-Problem: In some environments a few tests are expected to fail. +-Solution: Add $TEST_MAY_FAIL to list tests that should not cause make to +- fail. +-Files: src/testdir/runtest.vim +- +-Patch 8.2.0424 +-Problem: Checking for wrong return value. (Tom) +-Solution: Invert the check and fix the test. +-Files: src/vim9execute.c, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0425 +-Problem: Code for modeless selection not sufficiently tested. +-Solution: Add tests. Move mouse code functionality to a common script file. +- (Yegappan Lakshmanan, closes #5821) +-Files: src/testdir/Make_all.mak, src/testdir/gen_opt_test.vim, +- src/testdir/mouse.vim, src/testdir/test_edit.vim, +- src/testdir/test_global.vim, src/testdir/test_modeless.vim, +- src/testdir/test_normal.vim, src/testdir/test_selectmode.vim, +- src/testdir/test_termcodes.vim, src/testdir/test_visual.vim, +- src/ui.c +- +-Patch 8.2.0426 +-Problem: Some errors were not tested for. +-Solution: Add tests. (Dominique PellĂ©, closes #5824) +-Files: src/testdir/test_buffer.vim, src/testdir/test_options.vim, +- src/testdir/test_tcl.vim, src/testdir/test_terminal.vim, +- src/testdir/test_window_cmd.vim +- +-Patch 8.2.0427 +-Problem: It is not possible to check for a typo in a feature name. +-Solution: Add an extra argument to has(). +-Files: runtime/doc/eval.txt, src/evalfunc.c, src/testdir/check.vim, +- src/testdir/test_functions.vim +- +-Patch 8.2.0428 +-Problem: Buffer name may leak. +-Solution: Free the buffer name before overwriting it. +-Files: src/terminal.c +- +-Patch 8.2.0429 +-Problem: No warning when test checks for option that never exists. +-Solution: In tests check that the option can exist. +-Files: src/testdir/check.vim +- +-Patch 8.2.0430 +-Problem: Window creation failure not properly tested. +-Solution: Improve the test. (Yegappan Lakshmanan, closes #5826) +-Files: src/testdir/test_cmdline.vim, src/testdir/test_window_cmd.vim +- +-Patch 8.2.0431 +-Problem: Some compilers don't support using \e for Esc. (Yegappan +- Lakshmanan) +-Solution: use \033 instead. +-Files: src/ui.c +- +-Patch 8.2.0432 +-Problem: A few tests fail in a huge terminal. +-Solution: Make the tests pass. (Dominique PellĂ©, closes #5829) +-Files: src/testdir/test_autocmd.vim, src/testdir/test_options.vim, +- src/testdir/test_termcodes.vim, src/testdir/test_terminal.vim, +- src/testdir/test_window_cmd.vim +- +-Patch 8.2.0433 +-Problem: INT signal not properly tested. +-Solution: Add a test. Also clean up some unnecessary lines. (Dominique +- PellĂ©, closes #5828) +-Files: src/testdir/test_display.vim, src/testdir/test_ex_mode.vim, +- src/testdir/test_excmd.vim, src/testdir/test_messages.vim, +- src/testdir/test_signals.vim +- +-Patch 8.2.0434 +-Problem: MS-Windows with VTP: Normal color not working. +-Solution: After changing the Normal color update the VTP console color. +- (Nobuhiro Takasaki, closes #5836) +-Files: src/highlight.c +- +-Patch 8.2.0435 +-Problem: Channel contents might be freed twice. +-Solution: Call either channel_free_channel() or channel_free(), not both. +- (Nobuhiro Takasaki, closes #5835) +-Files: src/channel.c +- +-Patch 8.2.0436 +-Problem: No warnings for incorrect printf arguments. +-Solution: Fix attribute in declaration. Fix uncovered mistakes. (Dominique +- PellĂ©, closes #5834) +-Files: src/proto.h, src/eval.c, src/ops.c, src/spellfile.c, +- src/vim9compile.c, src/vim9execute.c, src/viminfo.c, src/gui.c +- +-Patch 8.2.0437 +-Problem: MS-Windows installer contains old stuff. +-Solution: Rely on Windows NT. (Ken Takata, closes #5832) +-Files: src/dosinst.c +- +-Patch 8.2.0438 +-Problem: Terminal noblock test is very flaky on BSD. +-Solution: Change WaitFor() to WaitForAssert() to be able to see why it +- failed. Add a short wait in between sending keys. +-Files: src/testdir/test_terminal.vim +- +-Patch 8.2.0439 +-Problem: :disassemble has minor flaws. +-Solution: Format the code. Use (int) instead of (char) for %c. +- (also by James McCoy, closes #5831) +-Files: src/vim9execute.c +- +-Patch 8.2.0440 +-Problem: Terminal noblock test is still very flaky on BSD. +-Solution: Increase the waiting time. +-Files: src/testdir/test_terminal.vim +- +-Patch 8.2.0441 +-Problem: Terminal noblock test is still failing on BSD. +-Solution: Reduce the amount of text. +-Files: src/testdir/test_terminal.vim +- +-Patch 8.2.0442 +-Problem: Channel contents might be used after being freed. +-Solution: Reset the job channel before freeing the channel. +-Files: src/channel.c +- +-Patch 8.2.0443 +-Problem: Clipboard code is spread out. +-Solution: Move clipboard code to its own file. (Yegappan Lakshmanan, +- closes #5827) +-Files: Filelist, src/Make_cyg_ming.mak, src/Make_morph.mak, +- src/Make_mvc.mak, src/Make_vms.mms, src/Makefile, src/README.md, +- src/clipboard.c, src/ops.c, src/proto.h, src/proto/clipboard.pro, +- src/proto/ops.pro, src/proto/register.pro, src/proto/ui.pro, +- src/register.c, src/ui.c +- +-Patch 8.2.0444 +-Problem: Swap file test fails on some systems. +-Solution: Preserve the swap file. Send NL terminated keys. +-Files: src/testdir/test_swap.vim +- +-Patch 8.2.0445 +-Problem: Png and xpm files not in MS-Windows zip file. +-Solution: Move files to shared between Unix and Windows target. +-Files: Filelist +- +-Patch 8.2.0446 +-Problem: Listener with undo of deleting all lines not tested. +-Solution: Add a test. +-Files: src/testdir/test_listener.vim +- +-Patch 8.2.0447 +-Problem: Terminal scroll tests fails on some systems. +-Solution: Remove the fixed 100msec wait for Win32. Add a loop to wait until +- scrolling has finished. (James McCoy, closes #5842) +-Files: src/testdir/test_terminal.vim +- +-Patch 8.2.0448 +-Problem: Various functions not properly tested. +-Solution: Add more tests, especially for failures. (Yegappan Lakshmanan, +- closes #5843) +-Files: runtime/doc/eval.txt, src/testdir/test_blob.vim, +- src/testdir/test_breakindent.vim, src/testdir/test_charsearch.vim, +- src/testdir/test_clientserver.vim, src/testdir/test_cmdline.vim, +- src/testdir/test_exists.vim, src/testdir/test_expand_func.vim, +- src/testdir/test_expr.vim, src/testdir/test_file_perm.vim, +- src/testdir/test_functions.vim, src/testdir/test_gui.vim, +- src/testdir/test_listdict.vim, src/testdir/test_marks.vim, +- src/testdir/test_partial.vim, src/testdir/test_registers.vim, +- src/testdir/test_search.vim, src/testdir/test_spell.vim, +- src/testdir/test_substitute.vim, src/testdir/test_syn_attr.vim, +- src/testdir/test_syntax.vim, src/testdir/test_taglist.vim, +- src/testdir/test_utf8.vim, src/testdir/test_vartabs.vim, +- src/testdir/test_window_cmd.vim +- +-Patch 8.2.0449 +-Problem: Vim9: crash if return type is invalid. (Yegappan Lakshmanan) +-Solution: Always return some type, not NULL. +-Files: src/vim9compile.c, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0450 +-Problem: Not enough testing for restricted mode and function calls. +-Solution: Add more tests. (Yegappan Lakshmanan, closes #5847) +-Files: src/testdir/test_method.vim, src/testdir/test_restricted.vim, +- src/testdir/test_vim9_script.vim +- +-Patch 8.2.0451 +-Problem: Win32: double-width character displayed incorrectly. +-Solution: First move the cursor to the first column. (Nobuhiro Takasaki, +- closes #5848) +-Files: src/os_win32.c +- +-Patch 8.2.0452 +-Problem: channel_parse_messages() fails when called recursively. +-Solution: Return for a recursive call. (closes #5835) +-Files: src/channel.c +- +-Patch 8.2.0453 +-Problem: Trailing space in job_start() command causes empty argument. +-Solution: Ignore trailing space. (closes #5851) +-Files: src/misc2.c, src/testdir/test_channel.vim +- +-Patch 8.2.0454 +-Problem: Some tests fail when the system is slow. +-Solution: Make the run number global, use in the test to increase the +- waiting time. (closes #5841) +-Files: src/testdir/runtest.vim, src/testdir/test_functions.vim +- +-Patch 8.2.0455 +-Problem: Cannot set the highlight group for a specific terminal. +-Solution: Add the "highlight" option to term_start(). (closes #5818) +-Files: src/terminal.c, src/structs.h, src/channel.c, +- src/testdir/test_terminal.vim, runtime/doc/terminal.txt, +- src/testdir/dumps/Test_terminal_popup_Terminal.dump, +- src/testdir/dumps/Test_terminal_popup_MyTermCol.dump +- +-Patch 8.2.0456 +-Problem: Test_confirm_cmd is flaky. +-Solution: Add a term_wait() call. (closes #5854) +-Files: src/testdir/test_excmd.vim +- +-Patch 8.2.0457 +-Problem: Test_quotestar() often fails when run under valgrind. +-Solution: Wait longer for the GUI to start. +-Files: src/testdir/test_quotestar.vim +- +-Patch 8.2.0458 +-Problem: Missing feature check in test function. +-Solution: Add check commands. +-Files: src/testdir/test_excmd.vim +- +-Patch 8.2.0459 +-Problem: Cannot check if a function name is correct. +-Solution: Add "?funcname" to exists(). +-Files: runtime/doc/eval.txt, src/evalfunc.c, src/testdir/test_exists.vim, +- src/testdir/check.vim +- +-Patch 8.2.0460 (after 8.2.0459) +-Problem: Build failure because of wrong feature name. +-Solution: Correct feature name. +-Files: src/evalfunc.c +- +-Patch 8.2.0461 +-Problem: Confirm test fails on amd64 system. (Alimar Riesebieter) +-Solution: Add an extra WaitForAssert(). (Dominique PellĂ©) +-Files: src/testdir/test_excmd.vim +- +-Patch 8.2.0462 +-Problem: Previewwindow test fails on some systems. (James McCoy) +-Solution: Wait a bit after sending the "o". (closes #5849) +-Files: src/testdir/test_popup.vim, +- src/testdir/dumps/Test_popup_and_previewwindow_01.dump +- +-Patch 8.2.0463 +-Problem: Build error without float and channel feature. (John Marriott) +-Solution: Define return types always. +-Files: src/globals.h, src/evalfunc.c +- +-Patch 8.2.0464 +-Problem: Typos and other small problems. +-Solution: Fix the typos. Add missing files to the distribution. +-Files: Filelist, src/buffer.c, src/drawline.c, src/gui_gtk_x11.c, +- src/os_unixx.h, src/proto/popupwin.pro +- +-Patch 8.2.0465 +-Problem: Vim9: dead code and wrong return type. +-Solution: Remove dead code. Fix return type. Add more tests. +-Files: src/vim9compile.c, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0466 (after 8.2.0452) +-Problem: Not parsing messages recursively breaks the govim plugin. +-Solution: When called recursively do handle messages but do not close +- channels. +-Files: src/channel.c +- +-Patch 8.2.0467 +-Problem: Vim9: some errors are not tested +-Solution: Add more tests. Fix that Vim9 script flag is not reset. +-Files: src/vim9compile.c, src/scriptfile.c, src/dict.c, +- src/testdir/test_vim9_expr.vim, src/testdir/test_vim9_script.vim +- +-Patch 8.2.0468 +-Problem: GUI: pixel dust with some fonts and characters. +-Solution: Always redraw the character before the cursor. (Nir Lichtman, +- closes #5549, closes #5856) +-Files: src/gui.c, src/proto/gui.pro, src/screen.c +- +-Patch 8.2.0469 +-Problem: Vim9: no error for missing ] after list. +-Solution: Add error message. Add more tests. +-Files: src/globals.h, src/list.c, src/userfunc.c, +- src/testdir/test_vim9_expr.vim, src/testdir/test_lambda.vim +- +-Patch 8.2.0470 +-Problem: Test_confirm_cmd_cancel() can fail on a slow system. +-Solution: Use WaitForAssert(). (Ozaki Kiichi, closes #5861) +-Files: src/testdir/test_excmd.vim +- +-Patch 8.2.0471 +-Problem: Missing change to compile_list(). +-Solution: Add error message. +-Files: src/vim9compile.c +- +-Patch 8.2.0472 +-Problem: Terminal highlight name is set twice, leaking memory. +-Solution: Delete one. +-Files: src/terminal.c +- +-Patch 8.2.0473 +-Problem: Variables declared in an outer scope. +-Solution: Declare variables only in the scope where they are used. +-Files: src/evalvars.c +- +-Patch 8.2.0474 (after 8.2.0403) +-Problem: Cannot use :write when using a plugin with BufWriteCmd. +-Solution: Reset BF_NOTEDITED after BufWriteCmd. (closes #5807) +-Files: src/fileio.c, src/testdir/test_autocmd.vim +- +-Patch 8.2.0475 +-Problem: Channel out_cb test still fails sometimes on Mac. +-Solution: Use an even longer timeout. +-Files: src/testdir/test_channel.vim +- +-Patch 8.2.0476 +-Problem: Terminal nasty callback test fails sometimes. +-Solution: use term_wait() instead of a sleep. (Yee Cheng Chin, closes #5865) +-Files: src/testdir/test_terminal.vim +- +-Patch 8.2.0477 +-Problem: Vim9: error messages not tested. +-Solution: Add more tests. +-Files: src/testdir/test_vim9_expr.vim, src/vim9execute.c +- +-Patch 8.2.0478 +-Problem: New buffers are not added to the Buffers menu. +-Solution: Turn number into string. (Yee Cheng Chin, closes #5864) +-Files: runtime/menu.vim, src/testdir/test_menu.vim +- +-Patch 8.2.0479 +-Problem: Unloading shared libraries on exit has no purpose. +-Solution: Do not unload shared libraries on exit. +-Files: src/if_lua.c, src/if_perl.xs, src/if_python.c, src/if_python3.c, +- src/if_ruby.c, src/if_tcl.c +- +-Patch 8.2.0480 +-Problem: Vim9: some code is not tested. +-Solution: Add more tests. +-Files: src/testdir/test_vim9_expr.vim, src/vim9compile.c +- +-Patch 8.2.0481 +-Problem: Travis is still using trusty. +-Solution: Adjust config to use bionic. (Ozaki Kiichi, closes #5868) +-Files: .travis.yml, src/testdir/lsan-suppress.txt +- +-Patch 8.2.0482 +-Problem: Channel and sandbox code not sufficiently tested. +-Solution: Add more tests. (Yegappan Lakshmanan, closes #5855) +-Files: src/option.h, src/testdir/test_channel.vim, +- src/testdir/test_clientserver.vim, src/testdir/test_cmdline.vim, +- src/testdir/test_edit.vim, src/testdir/test_excmd.vim, +- src/testdir/test_normal.vim, src/testdir/test_prompt_buffer.vim, +- src/testdir/test_restricted.vim, src/testdir/test_smartindent.vim, +- src/testdir/test_substitute.vim, src/testdir/test_terminal.vim, +- src/testdir/test_textformat.vim, src/testdir/test_visual.vim +- +-Patch 8.2.0483 +-Problem: Vim9: "let x = x + 1" does not give an error. +-Solution: Hide the variable when compiling the expression. +-Files: src/vim9compile.c, src/testdir/test_vim9_expr.vim +- +-Patch 8.2.0484 +-Problem: Vim9: some error messages not tested. +-Solution: Add more tests. +-Files: src/testdir/test_vim9_expr.vim +- +-Patch 8.2.0485 (after 8.2.0483) +-Problem: Vim9 script test fails. +-Solution: Stricter condition for adding new local variable. +-Files: Stricter condition for adding new local variable. +- +-Patch 8.2.0486 +-Problem: Vim9: some code and error messages not tested. +-Solution: Add more tests. +-Files: src/vim9compile.c, src/evalvars.c, src/testdir/test_vim9_expr.vim, +- src/testdir/test_vim9_script.vim +- +-Patch 8.2.0487 +-Problem: Vim9: compiling not sufficiently tested. +-Solution: Add more tests. Fix bug with PCALL. +-Files: src/vim9compile.c, src/vim9execute.c, src/vim9.h, +- src/testdir/test_vim9_script.vim, +- src/testdir/test_vim9_disassemble.vim +- +-Patch 8.2.0488 +-Problem: Vim9: Compiling can break when using a lambda inside :def. +-Solution: Do not keep a pointer to the dfunc_T for longer time. +-Files: src/vim9compile.c, src/vim9.h +- +-Patch 8.2.0489 +-Problem: Vim9: memory leaks. +-Solution: Free memory in the right place. Add hints for using asan. +-Files: src/vim9compile.c, src/testdir/lsan-suppress.txt, src/Makefile +- +-Patch 8.2.0490 +-Problem: Win32: VTP doesn't respect 'restorescreen'. +-Solution: Use escape codes to switch to alternate screen. (Nobuhiro +- Takasaki, closes #5872) +-Files: src/os_win32.c +- +-Patch 8.2.0491 +-Problem: Cannot recognize a