aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
| * | | | | | | | | | | | Inccommand: Multiline substitutions, highlighting, multibyte.KillTheMule2017-10-29
| | |_|_|_|/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make inccomand work with multiline patterns and substitutions. Also care for proper highlighting and multibyte characters.
* | | | | | | | | | | | pvs/V575: false positive (#7462)Justin M. Keyes2017-10-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ./src/nvim/ex_getln.c:2787:1: error: V575 The 'memcpy' function doesn't copy the whole string. Use 'strcpy / strcpy_s' function to preserve terminal null. We could instead "trick" PVS like this: diff --git a/src/nvim/ex_getln.c b/src/nvim/ex_getln.c index e79476ab532a..295630693b27 100644 --- a/src/nvim/ex_getln.c +++ b/src/nvim/ex_getln.c @@ -2782,9 +2782,10 @@ static void ui_ext_cmdline_show(CmdlineInfo *line) void ui_ext_cmdline_block_append(int indent, const char *line) { - char *buf = xmallocz(indent + strlen(line)); + size_t linelen = strlen(line); + char *buf = xmallocz(indent + linelen); memset(buf, ' ', indent); - memcpy(buf+indent, line, strlen(line)); + memcpy(buf + indent, line, linelen); Array item = ARRAY_DICT_INIT; ADD(item, DICTIONARY_OBJ((Dictionary)ARRAY_DICT_INIT));
* | | | | | | | | | | | eval_clear: free profile dataJustin M. Keyes2017-10-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Memory leak exposed by new test added in #7444. ==38771==ERROR: LeakSanitizer: detected memory leaks Direct leak of 2400 byte(s) in 1 object(s) allocated from: 0 0x51163d in realloc (/home/travis/build/neovim/neovim/build/bin/nvim+0x51163d) 1 0xfda51c in xrealloc /home/travis/build/neovim/neovim/src/nvim/memory.c:169:15 2 0xda6802 in ga_grow /home/travis/build/neovim/neovim/src/nvim/garray.c:98:14 3 0xb67ccd in script_line_start /home/travis/build/neovim/neovim/src/nvim/ex_cmds2.c:3286:11 4 0xb62885 in getsourceline /home/travis/build/neovim/neovim/src/nvim/ex_cmds2.c:3110:5 5 0xb5fbfd in do_source /home/travis/build/neovim/neovim/src/nvim/ex_cmds2.c:2951:15 6 0xb5c484 in cmd_source /home/travis/build/neovim/neovim/src/nvim/ex_cmds2.c:2710:14 7 0xb5c5b0 in ex_source /home/travis/build/neovim/neovim/src/nvim/ex_cmds2.c:2691:3 8 0xb950b9 in do_one_cmd /home/travis/build/neovim/neovim/src/nvim/ex_docmd.c:2242:5 9 0xb737e1 in do_cmdline /home/travis/build/neovim/neovim/src/nvim/ex_docmd.c:609:20 10 0xb79ac5 in do_cmdline_cmd /home/travis/build/neovim/neovim/src/nvim/ex_docmd.c:280:10 11 0xed8a7b in exe_commands /home/travis/build/neovim/neovim/src/nvim/main.c:1684:5 12 0xec6602 in main /home/travis/build/neovim/neovim/src/nvim/main.c:521:5 13 0x2ae968600f44 in __libc_start_main /build/eglibc-SvCtMH/eglibc-2.19/csu/libc-start.c:287
* | | | | | | | | | | | vim-patch:8.0.1207Justin M. Keyes2017-10-29
|/ / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Profiling skips the first and last script line. Solution: Check for BOM after setting script ID. (Lemonboy, closes vim/vim#2103, closes vim/vim#2112) Add a test. List the trailing script lines. https://github.com/vim/vim/commit/67435d9983965c5c77fc74f0559779ce4554dacb
* | | | | | | | | | | Merge #7444 'vim-patch: test :profile'Justin M. Keyes2017-10-29
|\ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / |/| | | | | | | | | |
| * | | | | | | | | | vim-patch:8.0.0944Justin M. Keyes2017-10-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Test_profile is a little bit flaky. Solution: Accept a match when self and total time are the same. (James McCoy, closes vim/vim#1972) https://github.com/vim/vim/commit/d21b16f3c0c676bfe3a37aef1ac3118e1ecded60
| * | | | | | | | | | fix TEST_FILE=test_profile.res make oldtest failedckelsel2017-10-27
| | | | | | | | | | |
| * | | | | | | | | | vim-patch:8.0.0196ckelsel2017-10-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The test for :profile is slow and does not work on MS-Windows. Solution: Use the "-es" argument. (Dominique Pelle) Swap single and double quotes for system() https://github.com/vim/vim/commit/c011a3d083001bcd9853b4447422f1819f3cee2f
| * | | | | | | | | | vim-patch:8.0.0194ckelsel2017-10-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Profile tests fails if total and self time are equal. Solution: Make one time optional. https://github.com/vim/vim/commit/e32bbded641a5da0263ecf82f9ccc95a8e0a089e
| * | | | | | | | | | vim-patch:8.0.0189ckelsel2017-10-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: There are no tests for the :profile command. Solution: Add tests. (Dominique Pelle, closes vim/vim#1383) https://github.com/vim/vim/commit/296b1f28ca9cedeb55872f306808b2214b519ce7
* | | | | | | | | | | rpc: Don't delay notifications when request is pending (#6544)Björn Linse2017-10-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the old behavior, if a GUI makes a blocking request that requires user interaction (like nvim_input()), it would not get any screen updates. The client, not nvim, should decide how to handle notifications during a pending request. If an rplugin wants to avoid async calls while a sync call is busy, it likely wants to avoid processing async calls while another async call also is handled as well. This may break the expectation of some existing rplugins. For compatibility, remote/define.vim reimplements the old behavior. Clients can opt-out by specifying `sync=urgent`. - Legacy hosts should be updated to use `sync=urgent`. They could add a flag indicating which async methods are always safe to call and which must wait until the main loop returns. - New hosts can expose the full asyncness, they don't need to offer both behaviors. ref #6532 ref #1398 d83868fe9071af1b4866594eac12f7aa0fa71b53
* | | | | | | | | | | Merge #7173 'api/ui: externalize cmdline'Justin M. Keyes2017-10-29
|\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | closes #6162
| * | | | | | | | | | | doc/ui.txtJustin M. Keyes2017-10-29
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: fix inputsecret()Björn Linse2017-10-26
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: interact with cmdline windowBjörn Linse2017-10-26
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: implement redraw!Björn Linse2017-10-26
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: turn nested cmdlines into a linked listBjörn Linse2017-10-26
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: rename cmdline_char to cmdline_special_charBjörn Linse2017-10-26
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: extend "function" to generic "block" mechanismBjörn Linse2017-10-26
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: disable some redrawsBjörn Linse2017-10-26
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: add support for highlightingBjörn Linse2017-10-26
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: lintDongdong Zhou2017-10-26
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: added indentDongdong Zhou2017-10-26
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: Add function block supportDongdong Zhou2017-10-26
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: added cmdline levelDongdong Zhou2017-10-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | add cchar_to_string
| * | | | | | | | | | | ext_cmdline: change to use ui_callDongdong Zhou2017-10-26
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: fix firstc, change cmdline_leave to cmdline_hideDongdong Zhou2017-10-26
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: change the content formatDongdong Zhou2017-10-26
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: use standard external ui functionsDongdong Zhou2017-10-26
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: lintDongdong Zhou2017-10-26
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: add testsDongdong Zhou2017-10-26
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: Added cmdline promptDongdong Zhou2017-10-26
| | | | | | | | | | | |
| * | | | | | | | | | | ext_cmdline: allow external ui to draw cmdlineDongdong Zhou2017-10-26
| |/ / / / / / / / / /
* | | | | | | | | | | vim-patch:8.0.0206 (#7446)KunMing Xie2017-10-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Test coverage for :retab insufficient. Solution: Add test for :retab. (Dominique Pelle, closes vim/vim#1391) https://github.com/vim/vim/commit/8822744b4d9d40aa1fd59870a8bdd7c64c59a42b
* | | | | | | | | | | test: :terminal + numberwidth=9Justin M. Keyes2017-10-28
| | | | | | | | | | |
* | | | | | | | | | | terminal: Account for number column (#5310)Sam Wilson2017-10-27
|/ / / / / / / / / /
* | | | | | | | | | Merge pull request #6967 from jamessan/icm-skip-modifiersJames McCoy2017-10-24
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | inccommand: Ignore leading modifiers in the command
| * | | | | | | | | | inccommand: Ignore leading modifiers in the commandJames McCoy2017-10-24
| | | | | | | | | | |
* | | | | | | | | | | :version : show Lua[Jit] version (#7436)Justin M. Keyes2017-10-24
|/ / / / / / / / / / | | | | | | | | | | | | | | | | | | | | Also remove vestigial `extra_patches` code.
* | | | | | | | | | Merge #7430 'Ignore virtcols after 32000'Justin M. Keyes2017-10-22
|\ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | test: tabstop=<big-number> #2838Justin M. Keyes2017-10-22
| | | | | | | | | | |
| * | | | | | | | | | plines_win_nofold(): Ignore virtcols after 32000th computation #3527Victor Adam2017-10-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid crashing or hanging when editing a file than contains ludicrously long lines (more than 100,000,000 virtual columns). The change is in plines_win_nofold, which is called by wrapping and folding code. As a result, wrapping and folding may be done incorrectly when the UI is capable of rendering more than 32000 characters at a time (tiny font). fixes #2838
* | | | | | | | | | | Merge #7165 'lua: Move stricmp to vim module'Justin M. Keyes2017-10-22
|\ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / |/| | | | | | | | | |
| * | | | | | | | | | lua/executor: Fix crash when first string contains NUL and second notZyX2017-08-15
| | | | | | | | | | |
| * | | | | | | | | | lua/executor: Move stricmp to vim “module” and document itZyX2017-08-15
| | | | | | | | | | |
| * | | | | | | | | | lua/executor: Make stricmp function work with strings with NULsZyX2017-08-15
| | | | | | | | | | |
* | | | | | | | | | | :cquit : take an error code argument #7336Josh Leeb-du Toit2017-10-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | closes #2699 ex_cmds.lua: use flags consistent with similar commands such as `cnext`. upstream discussion: "[patch] :qcuit can take exit code" https://groups.google.com/d/msg/vim_dev/_PjyNbUKyRc/oPgr5_ZXc6AJ
* | | | | | | | | | | vim-patch:8.0.0140 (#7428)KunMing Xie2017-10-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Pasting inserted text in Visual mode does not work properly. (Matthew Malcomson) Solution: Stop Visual mode before stuffing the inserted text. (Christian Brabandt, from neovim #5709) https://github.com/vim/vim/commit/f8eb9c51e5bbd10e59c9b1247f8f6c7f5b77ccd0
* | | | | | | | | | | Merge #7420 'vim-patch:8.0.0962, 8.0.1019'Justin M. Keyes2017-10-21
|\ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | vim-patch:8.0.1019Justin M. Keyes2017-10-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Pasting in virtual edit happens in the wrong place. Solution: Do not adjust coladd when after the end of the line (closes vim/vim#2015) https://github.com/vim/vim/commit/d41babef89a50cdf165f15bc1834c0a4e89ffff8