aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* | | | version: State that 1960 was includedZyX2016-06-26
| | | |
* | | | Merge #4965 from justinmk/fixup4453Justin M. Keyes2016-06-25
|\ \ \ \ | | | | | | | | | | ex_cmds2.c: lint
| * | | | ex_cmds2.c: cleanupJustin M. Keyes2016-06-25
| | | | |
| * | | | ex_cmds2.c:style: Silence all clint warningsJ Phani Mahesh2016-06-24
| | | | |
* | | | | option: Make all pointers in set_string_option constantZyX2016-06-24
| | | | |
* | | | | *: Fix linter errorsZyX2016-06-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also adds one exception to linter rules: typedef struct { kvec_t(Object) stack; } EncodedData; is completely valid (from the style guide point of view) code.
* | | | | kvec: Do not bother with making capacity a power of 2ZyX2016-06-24
| | | | | | | | | | | | | | | This avoids gcc warnings about undefined behaviour.
* | | | | msgpack_rpc: Fix crash in log_server_msgZyX2016-06-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It appears that used msgpack library is not able to parse back message created by msgpack_rpc_from_object() if nesting level is too high, so log_server_msg now cares about msgpack_unpack_next() return value. Also error message from server_notifications_spec.lua is not readable if something is wrong (though at least now it does not crash when parsing deeply nested structures). log_server_msg() in the test reports [msgpack-rpc] nvim -> client(1) [error] "parse error"
* | | | | option: Handle NULL string in set_option_valueZyX2016-06-24
| | | | |
* | | | | eval: Also make clear_tv non-recursiveZyX2016-06-24
| | | | |
* | | | | kvec,typval_encode: Add new vector: the one with preallocated arrayZyX2016-06-24
| | | | |
* | | | | msgpack_rpc: Also make msgpack_from_*/msgpack_to_* functions not recurZyX2016-06-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes some stack overflows in new test regarding deeply nested variables. Now in place of crashing vim_to_object/msgpack_rpc_from_object/etc it crashes clear_tv with stack overflow.
* | | | | api/helpers: Use typval_encode.h for vim_to_objectZyX2016-06-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This ought to prevent stack overflow, but I do not see this actually working: *lua* code crashes with stack overflow when trying to deserialize msgpack from Neovim, Neovim is fine even if nesting level is increased 100x (though test becomes very slow); not sure how recursive function may survive this. So it looks like there are currently only two positive effects: 1. NULL lists are returned as empty (#4596). 2. Functional tests are slightly more fast. Very slightly. Checked for Release build for test/functional/eval tests because benchmarking of debug mode is not very useful.
* | | | | os/fileio: Use readv oftenZyX2016-06-24
| | | | |
* | | | | *: Satisfy linter (newest type casts rule)ZyX2016-06-24
| | | | |
* | | | | file: Move src/nvim/file.* to src/nvim/os/fileio.*ZyX2016-06-24
| | | | |
* | | | | unittests: Add tests for file.cZyX2016-06-24
| | | | | | | | | | | | | | | | | | | | Also fixes some errors found.
* | | | | shada: Do not forget to close ShaDa readerZyX2016-06-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously there was file descriptor leak, not detected by sanitizers. Now it is file descriptor leak with a small memory leak which is detected by ASAN what fails one of the tests (actually, “ShaDa support code leaves .tmp.z in-place when there is error in original ShaDa and it has .tmp.a … .tmp.x”, but error is reported at the next test because leaks are not detected until Neovim exit and Neovim exit happens when clear()/reset() is called which happens in before_each only).
* | | | | file: Use own constants, do not rely on fcntl.hZyX2016-06-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | One of the reasons is that O_RDONLY is zero, which makes checking whether file is opened read- or write-only harder. It is not guaranteed that on other system O_WRONLY will not be zero (e.g. because file can only be opened in read-write mode).
* | | | | file: Add buffered reading and writingZyX2016-06-23
| | | | | | | | | | | | | | | | | | | | Still no busted tests. Not tested without HAVE_PREADV.
* | | | | file,os/fs,shada: Separate opening, closing, writing and reading filesZyX2016-06-23
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | Moves low-level functions handling to os/fs.c. Adds file.c with a proxy interface. Target: while leaving syscalls handling is os.c (partially handled by libuv), add buffering for reading and writing to file.c.
* | | | cmake: remove unused includes (#4947)Nicolai Skogheim2016-06-22
| | | |
* | | | lintJames McCoy2016-06-22
| | | |
* | | | vim-patch:7.4.1592James McCoy2016-06-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Quickfix code using memory after being freed. (Dominique Pelle) Solution: Detect that the window was closed. (Hirohito Higashi) https://github.com/vim/vim/commit/0899d698030ec076eb26352cda1ea334ab0819d9
* | | | Always resize the embedded vterm properlyMarco Hinz2016-06-20
| | | |
* | | | Merge #4697 'capture() function'.Justin M. Keyes2016-06-20
|\ \ \ \
| * | | | Port capture() functionShougo Matsushita2016-05-27
| | | | | | | | | | | | | | | | | | | | https://groups.google.com/forum/#!msg/vim_dev/H3Z3ChSUh_4/beZs6KzYdBsJ
* | | | | coverity/149459: CHECKED_RETURN (false positive)Justin M. Keyes2016-06-18
| | | | |
* | | | | synIDattr(): return RRGGBB value for [fg|bg|sp]# #4851Rom Grk2016-06-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | add tests for synIDattr() with [fg|bg|sp]# add tests for synIDattr and various #RGB colors synIDattr: test for ui_rgb_attached() test: fix tests for synIDattr fg/bg/sp
* | | | | eval: add api_info()Björn Linse2016-06-17
| | | | | | | | | | | | | | | | | | | | | | | | | Previously, the api metadata was only accessible frow within nvim as msgpackparse(systemlist('nvim --api-info'))[0]
* | | | | Merge #4923 from justinmk/docJustin M. Keyes2016-06-16
|\ \ \ \ \ | | | | | | | | | | | | doc: cleanup
| * | | | | doc: consolidate nvim.txtJustin M. Keyes2016-06-15
| | | | | |
* | | | | | vim-patch:7.4.1126James McCoy2016-06-15
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Can only get the directory of the current window. Solution: Add window and tab arguments to getcwd() and haslocaldir(). (Thinca, Hirohito Higashi) https://github.com/vim/vim/commit/c970330676eaae7ba7cd05cfa46df5a413853ef9
* | | | | Add new functionality to the `=` marker in the STLTJ DeVries2016-06-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This new functionality is explained in the documentation. Also, many tests have been added to the buffer_spec.lua file
* | | | | Merge #3745 from cacplate/ops_WconversionJustin M. Keyes2016-06-13
|\ \ \ \ \ | | | | | | | | | | | | Enable -Wconversion in ops.c
| * | | | | remove some asserts and lintCharles Joachim2016-05-30
| | | | | |
| * | | | | ops.c: enable -Wconversion warningCharles Joachim2016-05-30
| | | | | |
* | | | | | vim-patch:7.4.1352 (#4914)Michael Ennen2016-06-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The test script lists all functions before executing them. Solution: Only list the function currently being executed. https://github.com/vim/vim/commit/93bf558caef2d507ef6baf56eaf6025b63da1e34
* | | | | | tui/input.c: Handle Ctrl-Z (suspend) for TERM=linux (#3100) (#4911)Mateusz Czapliński2016-06-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix #3100. On virtual consoles (Alt-F1, etc.), the Ctrl-Z combination was lost.
* | | | | | Merge #4908 from ZyX-I/clint-checks-2Justin M. Keyes2016-06-11
|\ \ \ \ \ \ | | | | | | | | | | | | | | Add more clint checks
| * | | | | | clint: Add rules that forbids spaces after a cast operatorZyX2016-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://neovim.io/develop/style-guide.xml#Horizontal_Whitespace Note that this errors out for e.g. if (has_mbyte) mb_copy_char((const char_u **)(&f), &t); \ (found in macros.h:151) or #define ECMD_SET_HELP 0x02 /* set b_help flag of (new) buffer before (found in ex_cmds.h:11) (note `(new) buffer`). I left this as-is because these pieces of code are already caught by another rule (braces near if and `/*`-style comments). Other false positives I found were: 1. `FUNC_ATTR_NONNULL_ARG(1) FUNC_ATTR_WARN_UNUSED_RESULT`: rejected by requiring type name to start with `[a-zA-Z_]` (this makes `1` not be incorrectly recognized as a type). 2. `#define FOO(var) (var)`: rejected by creating `cast_line`. 3. `(expr) * (expr)`: rejected by constructing regexp so that unary operators require no spaces after them. 4. `int f(void) FUNC_ATTR_PURE`: rejected by requiring line to start with a space. 5. `"." STR(NVIM_VERSION_PATCH) NVIM_VERSION_PRERELEASE`: not rejected, such thing should be rare and it would be easy to get rid of the false positive by e.g. breaking line. Struct literals like `(MyStruct) { 4, 2 }` are not checked: 1. I am not sure whether they are under this rule at all (this is not a cast). 2. It would be hard to get rid of false positives (like the example with `if` above, but now for *valid* `if() {}`s).
| * | | | | | func_attr: Fix other new linter errorsZyX2016-06-11
| | | | | | |
| * | | | | | *: Fix new linter errorsZyX2016-06-11
| | | | | | |
| * | | | | | clint: Reject indented preprocessor directivesZyX2016-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is also not allowed by the style guide: https://neovim.io/develop/style-guide.xml#Preprocessor_Directives.
| * | | | | | *: Also fix the adjacent errorsZyX2016-06-11
| | | | | | |
| * | | | | | *: Fix errors from new linter checksZyX2016-06-11
| | | | | | |
| * | | | | | clint: Do not allow aligning line continuation charactersZyX2016-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rejected by https://neovim.io/develop/style-guide.xml#Horizontal_Whitespace. Note: what to do with “empty” lines is not described in the style guide, neither it is checked.
* | | | | | | Remove some unnecessary function attributes (#4909)oni-link2016-06-11
|/ / / / / / | | | | | | | | | | | | | | | | | | This removes attribute FUNC_ATTR_NONNULL_ALL for functions without a pointer parameter.
* | | | | | Merge #4813 'runtime: clipboard: start daemons in /'.Justin M. Keyes2016-06-10
|\ \ \ \ \ \
| * | | | | | eval: allow setting cwd in {jobstart,termopen}()Aleksa Sarai2016-06-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Processes in vim are always started in the current directory, which causes issues when the process is a daemon and the current directory is a mountpoint. Fix this by adding an option to set the cwd of the new process with jobstart(). In addition, fix termopen() so that it actually uses the cwd option from the dict (it couldn't previously set the cwd value due to dead code). Signed-off-by: Aleksa Sarai <cyphar@cyphar.com>