aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* legacy tests: migrate test_autoformat_joinRainer Borene2014-11-04
|
* legacy tests: migrate test_changelistRainer Borene2014-11-04
|
* legacy tests: migrate test81Rainer Borene2014-11-04
|
* legacy tests: migrate test_utf8Rainer Borene2014-11-04
|
* legacy tests: migrate test_insertcountRainer Borene2014-11-04
|
* legacy tests: migrate test_optionsRainer Borene2014-11-04
|
* legacy tests: migrate test18Rainer Borene2014-11-04
|
* legacy tests: migrate test106Rainer Borene2014-11-04
|
* legacy tests: migrate test22Rainer Borene2014-11-04
|
* legacy tests: migrate test9Rainer Borene2014-11-04
|
* legacy tests: migrate test102Rainer Borene2014-11-04
|
* legacy tests: migrate test4Rainer Borene2014-11-04
|
* Passing current range to provider callshenadzit2014-11-04
| | | | - updated script_host_execute and script_host_execute_file to pass current range
* event: Assert that all libuv handles are closed on exit.Thiago de Arruda2014-11-03
| | | | | Travis build will now fail when core files are dumped, so call `abort()` when the event loop is not fully released before exiting.
* channel: Move mch_exit(0) call to a non-deferred event handlerThiago de Arruda2014-11-03
| | | | | Since `mch_exit` will re-enter event_poll, it is necessary to call it outside libuv event loop.
* event: Do an early return from event_teardown when not initializedThiago de Arruda2014-11-03
|
* event: Ensure the event loop has been cleaned up in event_teardownThiago de Arruda2014-11-02
| | | | | | | | | | - Add input_teardown/signal_teardown to take care of closing signal/stdin handles. - Call those functions in event_teardown, and ensure there are no active handles by entering an infinite loop when there are unclosed handles(think of this as an assertion that can't go unoticed on travis). - Move event_teardown call to the end of mch_exit. That is required because event_poll may still be called in that function.
* event: Reintroduce the immediate event queueThiago de Arruda2014-11-02
| | | | | | | | | | | | | Commit @264e0d872c("Remove automatic event deferral") removed the immediate event queue because event deferral now had to be explicit. The problem is that while some events don't need to be deferred, they still can result in recursive `event_poll` calls, and recursion is not supported by libuv. Examples of those are msgpack-rpc requests while a server->client request is pending, or signals which can call `mch_exit`(and that will result in `uv_run` calls). To fix the problem, this reintroduces the immediate event queue for events that can potentially result in event loop recursion. The non-deferred events are still processed in `event_poll`, but only after `uv_run` returns.
* event: Rename pending_events to deferred_eventsThiago de Arruda2014-11-02
|
* server: Refactor to ensure server handles are always properly closedThiago de Arruda2014-11-02
| | | | | | | | If the server fails to start(due to used address for example), the `server_start` function was freeing the handle memory before it was properly removed from libuv event loop queue. Fix that by replacing the `free(server)` call by `uv_close` call, which will take care of freeing the server on the next event loop iteration. Also replace `EMSG` calls by `ELOG`/`WLOG`.
* wstream: Memory allocation improvementsThiago de Arruda2014-11-02
| | | | | | - Rename WriteData to WRequest - Inline uv_write_t into WRequest, avoiding an extra allocation - Manage WBuffer/WRequest instances using klib memory pools
* job: Simplify job_teardown functionThiago de Arruda2014-11-02
| | | | | Remove the current teardown logic and reuse the job top timers with event_poll_until all jobs exit or are killed.
* Merge pull request #951 from bfredl/curfixJustin M. Keyes2014-11-01
|\ | | | | api: window_set_cursor doesn't always update position.
| * api/window_set_cursor: make sure cursor line is visible.Björn Linse2014-11-01
| | | | | | | | | | Previously, the cursor could be left outside the visible range if window is not the current window
* | coverity/74362: Initialized Array using ARRAY_DICT_INITVictor Fonseca2014-11-01
|/
* job: Fix job_wait to properly cleanup the job when it exits.Thiago de Arruda2014-10-31
|
* job: Refactor how job kill timeouts are handledThiago de Arruda2014-10-31
| | | | | | | Use a timer to periodically compare the current HR time against the HR time of when `job_stop` was called. After 1 second, send SIGTERM, after 2 seconds, send SIGKILL. The timer is only active when there's at least one `job_stop` call pending.
* job/shell: Refactor os_call_shell/os_system to share codeThiago de Arruda2014-10-31
|
* rstream: Add rstream_buffer method to get a reference to RBufferThiago de Arruda2014-10-31
|
* shell: Rename dyn_buffer_t to DynamicBufferThiago de Arruda2014-10-31
| | | | To follow our coding conventions
* job: Let job_start callers to selectively ignore stdioThiago de Arruda2014-10-31
| | | | | | | | Passing NULL as the callback for stdout/stderr will result in job_start ignoring stdout/stderr, respectively. A 'writable' boolean argument was also added, and when false `job_start` will ignore stdin. Also, refactor os_system to allow passing NULL as the `output` argument.
* job: Close libuv handles when uv_spawn failsThiago de Arruda2014-10-31
| | | | | | | Commit @709685b4612f4 removed the close_job_* calls when uv_spawn fails because of memory errors when trying to cleanup unitialized {R,W}Stream instances, but the uv_pipe_t instances must be closed because they are added to the event loop queue by previous `uv_pipe_init()` calls
* Mark patch 427 as included. (#1357)Scott Prager2014-10-30
|
* Merge pull request #1312 from GokuITA/coverity1289Justin M. Keyes2014-10-30
|\ | | | | coverity/71507: Unchecked return value (CHECKED_RETURN)
| * coverity/71507: Unchecked return value (CHECKED_RETURN)Victor Fonseca2014-10-20
| | | | | | | | Don't check for err->set since object_to_vim always return false when error is set
* | fs.c: add FUNC_ATTR_NONNULL_ALL to all functionsJustin M. Keyes2014-10-30
| |
* | api: Add vim_input function and mark vim_feedkeys as deferredThiago de Arruda2014-10-29
| | | | | | | | | | | | | | | | The `vim_feedkeys` must be deferred because it can potentially free the buffer passed to `os_inchar`(which in turns calls `vim_feedkeys` indirectly). The new `vim_input` function can be used to emulate user input(Since it does not mess with the typeahead, it is safe to execute without deferring).
* | input: Fix sizes of input/read buffersThiago de Arruda2014-10-29
| | | | | | | | | | Input buffer must be bigger than read buffer to ensure it always has space for converted data.
* | input/job: process ctrl+c and do conversion in the read callbackThiago de Arruda2014-10-29
| | | | | | | | | | | | | | | | | | - Extract `process_interrupts` out of `convert_input` - Instead of waiting for os_breakcheck/os_inchar calls, call `convert_input` and `process_interrupts` directly from the read callback in input.c. - Remove the `settmode` calls from `job_wait`. Now that interrupts are processed in the event loop, there's no need to set the terminal to cooked which introduces other problems(ref 7.4.427)
* | fix #1027: :wundo segfault in new, non-empty bufferJustin M. Keyes2014-10-26
| |
* | Merge pull request #1347 from splinterofchaos/433Justin M. Keyes2014-10-29
|\ \ | | | | | | vim-patch:7.4.433
| * | version: Mark patch 430 NA.Scott Prager2014-10-25
| | | | | | | | | | | | Not relevant because we always compile with +conceal.
| * | vim-patch:7.4.433Scott Prager2014-10-25
| | | | | | | | | | | | | | | | | | | | | Problem: Test 75 fails on MS-Windows. Solution: Use ":normal" instead of feedkeys(). (Michael Soyka) https://code.google.com/p/vim/source/detail?r=v7-4-433
* | | fix 'sign unplace id'Kartik K. Agaram2014-10-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since the introduction of the FOR_ALL_BUFFERS macro, 'sign unplace id' without a buffer was only removing the sign from the first buffer rather than all buffers, as described in the documentation. :help sign-unplace -- modeline discussion: https://github.com/akkartik/neovim/commit/7863c247db#commitcomment-8342590
* | | api: Implement vim_command_output functionThiago de Arruda2014-10-28
| | | | | | | | | | | | | | | This function can be used by API clients to execute a command and capture the output.
* | | job_start: Do not close in/out/err on error.Scott Prager2014-10-28
| | | | | | | | | | | | | | | | | | The streams job_close_*() reference have not been initialized by the time we call uv_spawn() and libuv closes these pipes for us when spawn() fails.
* | | job/valgrind: Fix invalid reads/missing free.Scott Prager2014-10-28
| | | | | | | | | | | | | | | | | | | | | | | | The JobEvent structure may refer to a job after it has been freed. Apply @tarruda's patch to extract the job data before pushing the event. Also, fix the type, "data" -> "job", in on_job_exit() and free the job name in the last job event.
* | | input: Fix conversion error in `convert_input()`Thiago de Arruda2014-10-28
| | | | | | | | | | | | | | | | | | | | | The `rbuffer_consumed` was being passed a consumed count from another buffer, causing integer overflow in `rbuffer_relocate`. Fixes #1343
* | | msgpack-rpc: Terminate server->client calls when the channel closesThiago de Arruda2014-10-28
| | |
* | | channel: fix `REQ` definition for msgpack-rpc loggingThiago de Arruda2014-10-28
|/ /