aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* vim-patch:8.0.0533: abbreviation doesn't work after backspacing newlineJan Edmund Lazo2018-06-08
| | | | | | Problem: Abbreviation doesn't work after backspacing newline. (Hkonrk) Solution: Set the insert start column. (closes vim/vim#1609) https://github.com/vim/vim/commit/878c263a489b7e211eda31fa13a3d5ad9e120554
* expand_env_esc: fix invalid memory access (#8508)Justin M. Keyes2018-06-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ref be68f218ffef [OLDTEST] Running test_options Failed: F /tests/oldtests|test_options :: Nvim exited with non-zero code -en travis_fold:start:-tests-oldtests-test-options ================================================================= ==26191==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x621000067900 at pc 0x0000004768bd bp 0x7ffe6bd02de0 sp 0x7ffe6bd02580 READ of size 4096 at 0x621000067900 thread T0 0 0x4768bc in __interceptor_getpwnam /local/mnt/workspace/tmp/ubuntu_rel/llvm/utils/release/final/llvm.src/projects/compiler-rt/lib/asan/../sanitizer_common/sanitizer_common_interceptors.inc:1726:3 1 0x12847c5 in os_get_user_directory /home/travis/build/neovim/neovim/build/../src/nvim/os/users.c:82:8 2 0x125a3e3 in expand_env_esc /home/travis/build/neovim/neovim/build/../src/nvim/os/env.c:380:25 3 0x1257fdb in expand_env_save_opt /home/travis/build/neovim/neovim/build/../src/nvim/os/env.c:255:3 4 0x1291b77 in gen_expand_wildcards /home/travis/build/neovim/neovim/build/../src/nvim/path.c:1195:13 5 0x129e2e7 in expand_wildcards /home/travis/build/neovim/neovim/build/../src/nvim/path.c:2018:12 6 0x129e193 in expand_wildcards_eval /home/travis/build/neovim/neovim/build/../src/nvim/path.c:1986:11 7 0xc2ddc3 in ExpandFromContext /home/travis/build/neovim/neovim/build/../src/nvim/ex_getln.c:4685:11 8 0xc29412 in ExpandOne /home/travis/build/neovim/neovim/build/../src/nvim/ex_getln.c:3775:9 9 0x931364 in f_expand /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:8257:32 10 0x811954 in call_func /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:6373:11 11 0x8256b8 in get_func_tv /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:6119:11 12 0x8ad6a1 in eval7 /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:4217:15 13 0x8a9c6b in eval6 /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:3914:7 14 0x8a797f in eval5 /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:3765:7 15 0x8a319f in eval4 /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:3502:7 16 0x8a263c in eval3 /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:3420:7 17 0x8a1adc in eval2 /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:3351:7 18 0x809b21 in eval1 /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:3278:7 19 0x824f24 in get_func_tv /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:6092:9 20 0x81e674 in ex_call /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:2726:9 21 0xb4db73 in do_one_cmd /home/travis/build/neovim/neovim/build/../src/nvim/ex_docmd.c:2238:5 22 0xb30119 in do_cmdline /home/travis/build/neovim/neovim/build/../src/nvim/ex_docmd.c:602:20 23 0x845232 in call_user_func /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:21396:3 24 0x81127b in call_func /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:6358:11 25 0x8256b8 in get_func_tv /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:6119:11 26 0x81e674 in ex_call /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:2726:9 27 0xb4db73 in do_one_cmd /home/travis/build/neovim/neovim/build/../src/nvim/ex_docmd.c:2238:5 28 0xb30119 in do_cmdline /home/travis/build/neovim/neovim/build/../src/nvim/ex_docmd.c:602:20 29 0x8645f1 in ex_execute /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:19541:7 30 0xb4db73 in do_one_cmd /home/travis/build/neovim/neovim/build/../src/nvim/ex_docmd.c:2238:5 31 0xb30119 in do_cmdline /home/travis/build/neovim/neovim/build/../src/nvim/ex_docmd.c:602:20 32 0x845232 in call_user_func /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:21396:3 33 0x81127b in call_func /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:6358:11 34 0x8256b8 in get_func_tv /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:6119:11 35 0x81e674 in ex_call /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:2726:9 36 0xb4db73 in do_one_cmd /home/travis/build/neovim/neovim/build/../src/nvim/ex_docmd.c:2238:5 37 0xb30119 in do_cmdline /home/travis/build/neovim/neovim/build/../src/nvim/ex_docmd.c:602:20 38 0xb19f2d in do_source /home/travis/build/neovim/neovim/build/../src/nvim/ex_cmds2.c:2973:3 39 0xb16580 in cmd_source /home/travis/build/neovim/neovim/build/../src/nvim/ex_cmds2.c:2718:14 40 0xb16677 in ex_source /home/travis/build/neovim/neovim/build/../src/nvim/ex_cmds2.c:2699:3 41 0xb4db73 in do_one_cmd /home/travis/build/neovim/neovim/build/../src/nvim/ex_docmd.c:2238:5 42 0xb30119 in do_cmdline /home/travis/build/neovim/neovim/build/../src/nvim/ex_docmd.c:602:20 43 0xb362c5 in do_cmdline_cmd /home/travis/build/neovim/neovim/build/../src/nvim/ex_docmd.c:278:10 44 0xe8e3a3 in exe_commands /home/travis/build/neovim/neovim/build/../src/nvim/main.c:1705:5 45 0xe7bbba in main /home/travis/build/neovim/neovim/build/../src/nvim/main.c:518:5 46 0x2b0e17bd1f44 in __libc_start_main /build/eglibc-ripdx6/eglibc-2.19/csu/libc-start.c:287 47 0x44dcfb in _start (/home/travis/build/neovim/neovim/build/bin/nvim+0x44dcfb) 0x621000067900 is located 0 bytes to the right of 4096-byte region [0x621000066900,0x621000067900) allocated by thread T0 here: 0 0x4eeed3 in malloc /local/mnt/workspace/tmp/ubuntu_rel/llvm/utils/release/final/llvm.src/projects/compiler-rt/lib/asan/asan_malloc_linux.cc:67:3 1 0xf87981 in try_malloc /home/travis/build/neovim/neovim/build/../src/nvim/memory.c:87:15 2 0xf87ba9 in xmalloc /home/travis/build/neovim/neovim/build/../src/nvim/memory.c:121:15 3 0x1257f6f in expand_env_save_opt /home/travis/build/neovim/neovim/build/../src/nvim/os/env.c:254:15 4 0x1291b77 in gen_expand_wildcards /home/travis/build/neovim/neovim/build/../src/nvim/path.c:1195:13 5 0x129e2e7 in expand_wildcards /home/travis/build/neovim/neovim/build/../src/nvim/path.c:2018:12 6 0x129e193 in expand_wildcards_eval /home/travis/build/neovim/neovim/build/../src/nvim/path.c:1986:11 7 0xc2ddc3 in ExpandFromContext /home/travis/build/neovim/neovim/build/../src/nvim/ex_getln.c:4685:11 8 0xc29412 in ExpandOne /home/travis/build/neovim/neovim/build/../src/nvim/ex_getln.c:3775:9 9 0x931364 in f_expand /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:8257:32 10 0x811954 in call_func /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:6373:11 11 0x8256b8 in get_func_tv /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:6119:11 12 0x8ad6a1 in eval7 /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:4217:15 13 0x8a9c6b in eval6 /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:3914:7 14 0x8a797f in eval5 /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:3765:7 15 0x8a319f in eval4 /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:3502:7 16 0x8a263c in eval3 /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:3420:7 17 0x8a1adc in eval2 /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:3351:7 18 0x809b21 in eval1 /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:3278:7 19 0x824f24 in get_func_tv /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:6092:9 20 0x81e674 in ex_call /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:2726:9 21 0xb4db73 in do_one_cmd /home/travis/build/neovim/neovim/build/../src/nvim/ex_docmd.c:2238:5 22 0xb30119 in do_cmdline /home/travis/build/neovim/neovim/build/../src/nvim/ex_docmd.c:602:20 23 0x845232 in call_user_func /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:21396:3 24 0x81127b in call_func /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:6358:11 25 0x8256b8 in get_func_tv /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:6119:11 26 0x81e674 in ex_call /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:2726:9 27 0xb4db73 in do_one_cmd /home/travis/build/neovim/neovim/build/../src/nvim/ex_docmd.c:2238:5 28 0xb30119 in do_cmdline /home/travis/build/neovim/neovim/build/../src/nvim/ex_docmd.c:602:20 29 0x8645f1 in ex_execute /home/travis/build/neovim/neovim/build/../src/nvim/eval.c:19541:7 SUMMARY: AddressSanitizer: heap-buffer-overflow /local/mnt/workspace/tmp/ubuntu_rel/llvm/utils/release/final/llvm.src/projects/compiler-rt/lib/asan/../sanitizer_common/sanitizer_common_interceptors.inc:1726:3 in __interceptor_getpwnam Shadow bytes around the buggy address: 0x0c4280004ed0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0x0c4280004ee0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0x0c4280004ef0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0x0c4280004f00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0x0c4280004f10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 =>0x0c4280004f20:[fa]fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x0c4280004f30: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x0c4280004f40: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x0c4280004f50: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x0c4280004f60: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x0c4280004f70: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==26191==ABORTING Failed: E /tests/oldtests|logs :: Runtime errors detected. Job exited with code 1 Screen (23 lines)
* vim-patch:8.0.0525: completion for user command argument not tested (#8506)Jan Edmund Lazo2018-06-09
| | | | | Solution: Completion for user command argument not tested. Problem: Add a test. https://github.com/vim/vim/commit/a33ddbbd04ca9b81cba6114708f42b8e26293b99
* vim-patch:8.0.0452: some macros are in lower case (#8505)Jan Edmund Lazo2018-06-08
| | | | | Problem: Some macros are in lower case. Solution: Make a few more macros upper case. https://github.com/vim/vim/commit/1c46544412382db8b3203d6c78e550df885540bd
* Merge #7917 'API: buffer updates'Justin M. Keyes2018-06-08
|\
| * API: Accept empty lists as dictionariesKillTheMule2018-05-23
| |
| * Add empty options dict to buf_attachKillTheMule2018-05-23
| |
| * Rename some more, fixe borked renamingKillTheMule2018-05-23
| |
| * Send changedtick as first event if buffer contents weren't requestedKillTheMule2018-05-23
| |
| * Unify updates_start and updates to lines_eventKillTheMule2018-05-23
| | | | | | | | Also rename changedtick -> changedtick_event
| * Use autogenerated declarationsKillTheMule2018-05-23
| |
| * LintKillTheMule2018-05-23
| |
| * Some renamings and doc changesKillTheMule2018-05-23
| |
| * Enable -WconversionKillTheMule2018-05-23
| |
| * The grand renamingKillTheMule2018-05-23
| |
| * Fix memory leakKillTheMule2018-05-23
| |
| * Bump up buffer capacity to 2GBKillTheMule2018-05-23
| |
| * Make LiveUpdate return lastline instead of numreplacedKillTheMule2018-05-23
| | | | | | | | In analogy to `nvim_buf_set_lines`.
| * LintKillTheMule2018-05-23
| |
| * Make separate functions to start/stop live updatesKillTheMule2018-05-23
| |
| * Adjust FUNC_API_SINCE for nvim_buf_live_updatesKillTheMule2018-05-23
| |
| * Add argument to not send a buffers content when updates are enabledKillTheMule2018-05-23
| | | | | | | | Add a test.
| * Update to latest masterKillTheMule2018-05-23
| |
| * API: Implement buffer updatesPeter Hodge2018-05-23
| | | | | | | | | | Originally written by @phodge in https://github.com/neovim/neovim/pull/5269.
* | Merge #8498 from janlazo/vim-8.0.0523Justin M. Keyes2018-06-08
|\ \
| * | lintJan Edmund Lazo2018-06-07
| | |
| * | vim-patch:8.0.0523: dv} deletes part of a multi-byte character.Jan Edmund Lazo2018-06-07
| | | | | | | | | | | | | | | | | | Problem: dv} deletes part of a multi-byte character. (Urtica Dioica) Solution: Include the whole character. https://github.com/vim/vim/commit/bf3d58073f7b34b2d65d1d08a728d1164e03cceb
* | | vim-patch:8.0.0355: using uninitialized memory when 'isfname' is empty (#8493)Jan Edmund Lazo2018-06-08
| | | | | | | | | | | | | | | | | | Problem: Using uninitialized memory when 'isfname' is empty. Solution: Don't call getpwnam() without an argument. (Dominique Pelle, closes vim/vim#1464) https://github.com/vim/vim/commit/187a4f28140f10ff833862be7e3ef823d317e1c7
* | | vim-patch:8.0.0586: no test for mapping timing out (#8501)Jan Edmund Lazo2018-06-08
| | | | | | | | | | | | | | | Problem: No test for mapping timing out. Solution: Add a test. https://github.com/vim/vim/commit/b7637c44c26b057d1f3721d932bbab06d9f74393
* | | vim-patch:8.0.0560: :windo allows for ! but it's not supported (#8500)Jan Edmund Lazo2018-06-08
| | | | | | | | | | | | | | | Problem: :windo allows for ! but it's not supported. Solution: Disallow passing !. (Hirohito Higashi) https://github.com/vim/vim/commit/451a4a1cb7797e5d9b9fd625671cb5c652e7da00
* | | terminal: flush vterm output buffer on pty output #8486林千里2018-06-08
|/ / | | | | | | | | | | | | | | | | | | | | Fixes #4151 libvterm uses an "output buffer" for terminal reporting (e.g. \e[6n to report cursor position) Flush it in on_channel_output() not just terminal_send_key() See also this line from pangoterm: https://bazaar.launchpad.net/~leonerd/pangoterm/trunk/view/607/pangoterm.c#L2159
* | Merge #8491 from janlazo/vim-8.0.0255Justin M. Keyes2018-06-07
|\ \
| * | vim-patch:8.0.0256: missing changes to one file breaks testJan Edmund Lazo2018-06-07
| | | | | | | | | | | | | | | | | | Problem: Tests fail because some changes were not included. Solution: Add changes to evalfunc.c https://github.com/vim/vim/commit/3a29abcb6154d9f55ca8abd6d97e5822b97ac4b3
| * | vim-patch:8.0.0255: setpos() does not use the buffer argument for all marksJan Edmund Lazo2018-06-06
| | | | | | | | | | | | | | | | | | | | | | | | Problem: When calling setpos() with a buffer argument it often is ignored. (Matthew Malcomson) Solution: Make the buffer argument work for all marks local to a buffer. (neovim vim/vim#5713) Add more tests. https://github.com/vim/vim/commit/f13e00b2cf381e13fd327b5387a5bd6f004ac2a3
* | | API: validation: mention invalid method name (#8489)Justin M. Keyes2018-06-07
| | |
* | | vim-patch:8.0.0265: ml_get error when :pydo deletes lines (#8492)Jan Edmund Lazo2018-06-07
| | | | | | | | | | | | | | | | | | | | | | | | Problem: May get ml_get error when :pydo deletes lines or switches to another buffer. (Nikolai Pavlov, issue vim/vim#1421) Solution: Check the buffer and line every time. https://github.com/vim/vim/commit/a58883b4ea0bbb813fd4dd7eb49dd6f03e3e5387 (We only include the tests, the Vim code changes are N/A for Nvim.)
* | | vim-patch:8.0.0254: error message of assert functions (#8488)Jan Edmund Lazo2018-06-07
|/ / | | | | | | | | | | Problem: When using an assert function one can either specify a message or get a message about what failed, not both. Solution: Concatenate the error with the message. https://github.com/vim/vim/commit/c7b831ca154537505f5a22d01335a86b2e9cb023
* | Merge #8464 from justinmk/cmake-findpkg-requiredJustin M. Keyes2018-06-06
|\ \
| * | win/build: avoid "C4142: benign redefinition of type"Justin M. Keyes2018-06-06
| | | | | | | | | | | | ssize_t is already typedef's by libuv:uv-win.h
| * | win: enable DYNAMIC_ICONVJustin M. Keyes2018-06-06
| | |
| * | win/build: download iconv, gettext toolsJustin M. Keyes2018-06-06
| | | | | | | | | | | | | | | | | | - We need the gettext tools (msgmerge.exe) because these aren't built when we build from source (not trivial). - We can use the pre-built libiconv-2.dll for DYNAMIC_ICONV_DLL.
| * | build/CMake: find_package(… REQUIRED)Justin M. Keyes2018-06-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "Always use `find_package` with `REQUIRED`." - We make an exception for LuaJit (not REQUIRED): the `nvim-test` target is included only if we can find LuaJit. This is partially a cargo-cult (reference below), but it uncovered at least one problem: `find_package(LibIntl REQUIRED)` fails on my vanilla ubuntu 16.04 system. ref: https://schneide.blog/2017/11/06/4-tips-for-better-cmake/ > optional dependencies is nice, but skipping on REQUIRED is not the way > you want to do it. In the worst case, some of your features will just > not work if those packages are not found, with no explanation > whatsoever. Instead, use explicit feature-toggles (e.g. using option()) > that either skip the find_package call or use it with REQUIRED, so the > user will know that another lib is needed for this feature.
* | | ex_getln.c: Fix PVS/V519: variable assigned twiceJustin M. Keyes2018-06-06
|/ /
* | Merge #8461 from bfredl/scrollstatusJustin M. Keyes2018-06-06
|\ \
| * | ex_getln: remove msg_scrolled cargo-cult magic, fixes #8251Björn Linse2018-06-02
| | |
| * | ex_getln: don't redraw statusline on top of scrolled messagesBjörn Linse2018-06-02
| | |
* | | vim-patch:8.0.0675: 'colorcolumn' has a higher priority than 'hlsearch' (#8483)Jan Edmund Lazo2018-06-05
| | | | | | | | | | | | | | | | | | Problem: 'colorcolumn' has a higher priority than 'hlsearch', it should be the other way around. (Nazri Ramliy) Solution: Change the priorities. (LemonBoy, closes vim/vim#1794) https://github.com/vim/vim/commit/774e5a9673260b1b8b88463669213a96637f72e8
* | | Merge #8479 from janlazo/vim-8.0.0529Justin M. Keyes2018-06-05
|\ \ \
| * | | lintJan Edmund Lazo2018-06-04
| | | |
| * | | vim-patch:8.0.0623: error for invalid regexp is not very informativeJan Edmund Lazo2018-06-04
| | | | | | | | | | | | | | | | | | | | | | | | Problem: The message "Invalid range" is used for multiple errors. Solution: Add two more specific error messages. (Itchyny, Ken Hamada) https://github.com/vim/vim/commit/966e58e413ffa88af8d748e697aa2999571fcd7b