summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2023-12-14patch 9.0.2164: Vim9: can use type a func arg/return valuev9.0.2164Ernie Rael
Problem: Vim9: can use type a func arg/return value Solution: Check if using type as function argument or return value closes: #13675 Signed-off-by: Ernie Rael <errael@raelity.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-14runtime(netrw): escape curdir in BrowseUpDir (#13681)Christian Brabandt
fixes #13678 Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-14patch 9.0.2163: Vim9: type can be assigned to list/dictv9.0.2163Ernie Rael
Problem: Vim9: type can be assigned to list/dict Solution: Prevent assigning a `type` to a `list` or `dict` closes: #13683 Signed-off-by: Ernie Rael <errael@raelity.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-14patch 9.0.2162: Vim9: type documentation out-datedv9.0.2162Yegappan Lakshmanan
Problem: Vim9: type documentation out-dated Solution: Update documentation, fix typo in type alias definition closes: #13684 Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-14patch 9.0.2161: Vim9: not able to use imported interfaces and classesv9.0.2161Yegappan Lakshmanan
Problem: Vim9: not able to use imported interfaces and classes Solution: Detect imported class/interfaces names correclty fixes: #13661 closes: #13685 Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-14CI: Fix i386 build (#13680)K.Takata
Fix the following error: ``` The following packages have unmet dependencies: binutils : Conflicts: binutils:i386 but 2.38-4ubuntu2.4 is to be installed binutils:i386 : Conflicts: binutils but 2.38-4ubuntu2.3 is to be installed binutils-common : Breaks: binutils-common:i386 (!= 2.38-4ubuntu2.3) but 2.38-4ubuntu2.4 is to be installed binutils-common:i386 : Breaks: binutils-common (!= 2.38-4ubuntu2.4) but 2.38-4ubuntu2.3 is to be installed libbinutils : Breaks: libbinutils:i386 (!= 2.38-4ubuntu2.3) but 2.38-4ubuntu2.4 is to be installed libbinutils:i386 : Breaks: libbinutils (!= 2.38-4ubuntu2.4) but 2.38-4ubuntu2.3 is to be installed libctf0 : Breaks: libctf0:i386 (!= 2.38-4ubuntu2.3) but 2.38-4ubuntu2.4 is to be installed libctf0:i386 : Breaks: libctf0 (!= 2.38-4ubuntu2.4) but 2.38-4ubuntu2.3 is to be installed E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages. ``` Run `apt-get upgrade` before installing additional packages. Signed-off-by: K.Takata <kentkt@csc.jp> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-13CI: Fix labeler.yml (#13677)K.Takata
* CI: Fix labeler.yml Use `any-glob-to-any-file` instead of `any-glob-to-all-files` in most places. * Adjust indentation
2023-12-13CI: label.yml: fixup for v5 (#13673)Philip H
* label.yml: sync-labels true * fixup: remove unused lines Signed-off-by: Philip H <47042125+pheiduck@users.noreply.github.com> Signed-off-by: K.Takata <kentkt@csc.jp>
2023-12-12patch 9.0.2160: instanceof() should use varargs as second argv9.0.2160Ernie Rael
Problem: instanceof() should use varargs as second arg Solution: Modify `instanceof()` to use varargs instead of list Modify `instanceof()` to use varargs instead of list Valid `instanceof()` arguments are `type`s. A `type` is not a value; it cannot be added to a list. This change is non-compatible with the current usage of instanceof; but instanceof is relatively new and it's a trivial change. fixes: #13421 closes: #13644 Signed-off-by: Ernie Rael <errael@raelity.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-12CI: bump actions/labeler from 4 to 5 (#13658)dependabot[bot]
Bumps [actions/labeler](https://github.com/actions/labeler) from 4 to 5. - [Release notes](https://github.com/actions/labeler/releases) - [Commits](https://github.com/actions/labeler/compare/v4...v5) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-12runtime(vim): Update syntax file, fix missing for highlight (#13668)dkearns
Fix highlighting of :for command. Link the vimFor syntax group to the vimCommand highlight group. Error introduced in commit f686921 Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-12patch 9.0.2159: screenpos() may crash with neg. columnv9.0.2159zeertzjq
Problem: screenpos() may crash with neg. column Solution: validate and correct column closes: #13669 Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-11CI: labeler.yml: update to v5 (#13664)Philip H
Signed-off-by: Philip H <47042125+pheiduck@users.noreply.github.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-11patch 9.0.2158: [security]: use-after-free in check_argument_typev9.0.2158Christian Brabandt
Problem: [security]: use-after-free in check_argument_type Solution: Reset function type pointer when freeing the function type list function pointer fp->uf_func_type may point to the same memory, that was allocated for fp->uf_type_list. However, when cleaning up a function definition (e.g. because it was invalid), fp->uf_type_list will be freed, but fp->uf_func_type may still point to the same (now) invalid memory address. So when freeing the fp->uf_type_list, check if fp->func_type points to any of those types and if it does, reset the fp->uf_func_type pointer to the t_func_any (default) type pointer closes: #13652 Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-11patch 9.0.2157: Vim9: incorrectly parses :def func definitionsv9.0.2157Christian Brabandt
Problem: Vim9: incorrectly parses :def func definitions Solution: check for more context when parsing function args Signed-off-by: Christian Brabandt <cb@256bit.org> Incorrectly parses def function definitions Vim currently allows to define the following vim9 function: def Func(f= ) enddef It currently thinks a Lambda is following the `=` but it doesn't check, that there is actually an expression following. So when such a think is encountered, remember that an expression should be following. If no expression is coming in the next few lines, fail parsing the function arguments, which will Vim no longer accept such a function. Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-11patch 9.0.2156: Vim9: can use typealias in assignmentv9.0.2156Ernie Rael
Problem: Vim9: can use typealias in an assignment Solution: Generate errors when class/typealias involved in the rhs of an assignment closes: #13637 Signed-off-by: Ernie Rael <errael@raelity.com> Signed-off-by: Christian Brabandt <cb@256bit.org> Generate errors when class/typealias involved in assignment.
2023-12-11runtime(filetype): ft detection maybe wrong if 'fic' set for *.[CH]shane.xb.qian
So only set the filetype to cpp for *.C and *.H files, if 'fileignorecase' option is not set. Signed-off-by: shane.xb.qian <shane.qian@foxmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-11runtime(doc): re-generate helptagsChristian Brabandt
Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-11runtime(sbt): do not set b:did_ftplugin before sourcing scala ftplugin(#13657)Karl Yngve Lervåg
The `b:did_ftplugin` guard was set and prevented us from actually sourcing `ftplugin/scala.vim`. Since the latter script also sets the guard properly, we can simply remove the guard here. Signed-off-by: =?UTF-8?q?Karl=20Yngve=20Lerv=C3=A5g?= <karl.yngve+git@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-11runtime(netrw): Fix `w:netrw_bannercnt` ref error with `netrw_fastbrowse=2` ↵KSR-Yasuda
(#13659) * NetRW: Fix `w:netrw_bannercnt` ref error with `netrw_fastbrowse=2` * NetRW: Fix wrong `w:netrw_bannercnt` setting closes: #13640 Signed-off-by: yasuda <yasuda@kyoto-sr.co.jp> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-11runtime(json): fix examples in comments for JSON formatting (#13660)Maxim Kim
Signed-off-by: Maxim Kim <habamax@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-10runtime(json): Add json formating plugin (Issue #11426) (#11506)Maxim Kim
related: #11426 Signed-off-by: Maxim Kim <habamax@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-10runtime(vim): Update syntax file (#13653)dkearns
Improve variable highlighting in :let, :unlet, :const and :for commands. Match registers and local, global and terminal option variables. Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-09runtime(doc): link cmdline completion to to |wildcards| and fix typos (#13636)zeertzjq
The docs for cmdline completion doesn't mention that [abc] is considered a wildcard, and |wildcards| contains more detailed information, so just link to it. Also fix some typos in other help files. Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-08runtime(doc): Update eval.txt (#13645)K.Takata
expr5 is also expr6 itself. Signed-off-by: K.Takata <kentkt@csc.jp> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-08patch 9.0.2155: Vim9: type not kept when assigning varsv9.0.2155Yegappan Lakshmanan
Problem: Vim9: type not kept when assigning vars Solution: When assigning a List or a Dict value to a variable of type 'any', keep the type closes: #13639 closes: #13646 Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-08patch 9.0.2154: The option[] array is not sortedv9.0.2154zeertzjq
Problem: The options[] array is not sorted alphabetically. Solution: Sort it alphabetically. Add a test. Avoid unnecessary loop iterations in findoption(). closes: #13648 Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-08runtime(syntax): unlet b:filetype_in_cpp_family for cpp & squirrellaburnumT
Update runtime/syntax/cpp.vim and runtime/syntax/squirrel.vim to unlet b:filetype_in_cpp_family as it remains set even after updating the ft of a file manually or through a modeline, not allowing c specific keywords to be highlighted. Since the variable b:filetype_in_cpp_family is only used by the c.vim syntax script, unlet it directly after sourcing the c.vim runtime file instead of at the end of the script. Also update the last Change Header for both files. closes: #13650 Signed-off-by: laburnumT <laburnumtec@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-08runtime(doc): fix typo in change.txtChristian Brabandt
Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-05runtime(fortran): update syntax and ftpluginsAjit-Thakkar
closes: #13629 Signed-off-by: Ajit-Thakkar <142174202+Ajit-Thakkar@users.noreply.github.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-05runtime(vim): Update syntax file and syntax test (#13632)dkearns
Add missing assignment operators (:let*=, :let/= and :let%=). Signed-off-by: Doug Kearns <dougkearns@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-05runtime(doc): Sort options.txt alphabeticallylaburnumT
Related to: vim/vim#13630 1. Sort section 3 (option-summary) of runtime/doc/options.txt in alphabetical order. 2. Remove double newlines in section 3 (option-summary). I did not alphabetically sort ttimeout and ttimeoutlen because they seem to belong with timeout and timeoutlen respectively, but I would like some input on that decision. Signed-off-by: laburnumT <laburnumtec@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-05runtime(doc): update todo items (#13631)Yegappan Lakshmanan
Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-05runtime(doc): sort option-list alphabetically (#13630)Teppei Taguchi
Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-05patch 9.0.2153: no support to build on OpenVMSv9.0.2153Zoltan Arpadffy
Problem: no support to build on OpenVMS Solution: Add OpenVMS X86_64 platform port closes: #13623 Co-authored-by: errael <errael@raelity.com> Co-authored-by: K.Takata <kentkt@csc.jp> Signed-off-by: Zoltan Arpadffy <zoltan.arpadffy@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-05patch 9.0.2152: Using type unknown for List/Dict containersv9.0.2152Yegappan Lakshmanan
Problem: Using type unknown for List/Dict containers Solution: Use 'any' instead fixes: #13582 closes: #13625 Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-05patch 9.0.2151: 'breakindent' is not drawn after diff filler linesv9.0.2151zeertzjq
Problem: 'breakindent' is not drawn after diff filler lines. Solution: Correct check for whether 'breakindent' should be drawn. closes: #13624 Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-05runtime(doc): remove non-existent parameter in shift-command (#13626)Roy Orbitson
The variant with the {count} parameter is explained in the next item. Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-05patch 9.0.2150: Using int for errbuflen in option funcsv9.0.2150Mike Williams
Problem: Using int for errbuflen in option funcs Solution: Use size_t for errbuflen in string option functions Use size_t for errbuflen in string option functions This started as size_t to int warning on Windows in do_set_option_string(). Other option setting functions are using size_t for errbuflen so I changed the type in the argument list and then chased further compiler warnings into the string option functions in optionstr.c changing ints to size_t as I went. I also changed the type of os_errbuflen in optset_T to size_t and updated related argument lists in optionstr.c, as well as updating set_string_option() to also use size_t for errbuflen for consistency with other string option setting functions. closes: #13628 Signed-off-by: Mike Williams <mikew@globalgraphics.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-04patch 9.0.2149: [security]: use-after-free in exec_instructions()v9.0.2149Christian Brabandt
Problem: [security]: use-after-free in exec_instructions() Solution: get tv pointer again [security]: use-after-free in exec_instructions() exec_instructions may access freed memory, if the GA_GROWS_FAILS() re-allocates memory. When this happens, the typval tv may still point to now already freed memory. So let's get that pointer again and compare it with tv. If those two pointers differ, tv is now invalid and we have to refresh the tv pointer. closes: #13621 Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-04patch 9.0.2148: Vim does not detect pacman.log filev9.0.2148Ronan Pigott
Problem: Vim does not detect pacman.log file Solution: Detect pacmanlogs and add syntax highlighting pacman.log is a filetype common to Arch Liux and related distributions. Add some simple syntax highlighting for the pacmanlog filetype. closes: #13618 Signed-off-by: Ronan Pigott <ronan@rjp.ie> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-04runtime(doc): reference 'go-!' inside os_win32.txt for !startChristian Brabandt
closes: #13583 Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-04patch 9.0.2147: Type check tests fail without the channel featurev9.0.2147Yegappan Lakshmanan
Problem: Type check tests fail without the channel feature Solution: only run tests, when Vim was build with +channel fixes: #13617 closes: #13619 Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-03patch 9.0.2146: text-property without type errors when joiningv9.0.2146Christian Brabandt
Problem: text-property without type errors when joining Solution: count all text-properties, with or without type before joining lines Error when joining lines with text properties without a proper type When joining lines, we need to consider all text properties that are attached to a line, even when those text properties are invalid and do not have a type attached to them. However, since patch v9.0.0993 (commit: 89469d157aea01513bde826b4519dd6b5fbceae4) those text properties won't be counted when joining lines and therefore this will cause the adjustment for text properties on joining to go wrong (and may later cause SIGABRT with an invalid free pointer) I am not sure, why the condition to not count text properties with a valid type was added in patch v9.0.993, because no test fails if those condition is removed. So let's just remove this condition and add a test that verifies, that we are able to join lines, even when the text properties attached to it do not have a valid type. fixes: #13609 closes: #13614 Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-03patch 9.0.2145: wrong scrolling in insert mode with smoothscrollv9.0.2145zeertzjq
Problem: Wrong scrolling in Insert mode with 'smoothscroll' at the bottom of the window. Solution: Don't use set_topline() when 'smoothscroll' is set. fixes: #13612 closes: #13613 Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-03patch 9.0.2144: Text properties causes wrong line wrappingv9.0.2144zeertzjq
Problem: Text properties causes wrong line wrapping to be drawn. Solution: Find the index of the last text property that inserts text. closes: #13611 Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-03CI: disable the test_terminal_resize2() test for GH CI in gui mode (#13615)Christian Brabandt
becaues it tends to time-out CI for unknown reasons. related: #13566 Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-01patch 9.0.2143: [security]: buffer-overflow in ex_substitutev9.0.2143Christian Brabandt
Problem: [security]: buffer-overflow in ex_substitute Solution: clear memory after allocating When allocating the new_start pointer in ex_substitute() the memory pointer points to some garbage that the following for loop in ex_cmds.c:4743 confuses and causes it to accessing the new_start pointer beyond it's size, leading to a buffer-overlow. So fix this by using alloc_clear() instead of alloc(), which will clear the memory by NUL and therefore cause the loop to terminate correctly. Reported by @henices, thanks! closes: #13596 Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-01patch 9.0.2142: [security]: stack-buffer-overflow in option callback functionsv9.0.2142Christian Brabandt
Problem: [security]: stack-buffer-overflow in option callback functions Solution: pass size of errbuf down the call stack, use snprintf() instead of sprintf() We pass the error buffer down to the option callback functions, but in some parts of the code, we simply use sprintf(buf) to write into the error buffer, which can overflow. So let's pass down the length of the error buffer and use sprintf(buf, size) instead. Reported by @henices, thanks! Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-12-01patch 9.0.2141: [security]: buffer-overflow in suggest_trie_walkv9.0.2141Christian Brabandt
Problem: [security]: buffer-overflow in suggest_trie_walk Solution: Check n before using it as index into byts array Basically, n as an index into the byts array, can point to beyond the byts array. So let's double check, that n is within the expected range after incrementing it from sp->ts_curi and bail out if it would be invalid. Reported by @henices, thanks! Signed-off-by: Christian Brabandt <cb@256bit.org>