aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
| * api: Add helper macros for dealing with API type castsThiago de Arruda2014-06-18
| |
| * api: Enable usage of Arrays and Dictionaries as [k]vectorsThiago de Arruda2014-06-18
| | | | | | | | | | - Rename a/n/m to items/size/capactity in kvec.h - Add capactity field to Arrays/Dictionaries
| * api: Change type of event data to `Object` from `typval_T`Thiago de Arruda2014-06-18
| |
| * api: Rename find_{buffer,window,tabpage}Thiago de Arruda2014-06-18
| | | | | | | | | | They were renamed to find_{buffer,window,tabpage}_by_handle to avoid conflicts with existing functions of the same name.
| * build: increase timeout for run-api-tests.expThiago de Arruda2014-06-18
| |
| * build: Fix error in dispatch generator for functions with channel_idThiago de Arruda2014-06-18
| |
| * events: Refactor how events are queued for processingThiago de Arruda2014-06-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To make it possible reuse `event_poll` recursively and in other blocking function calls, this changes how deferred/immediate events are processed: - There are two queues in event.c, one for immediate events and another for deferred events. The queue used when pushing/processing events is determined with boolean arguments passed to `event_push`/`event_process` respectively. - Events pushed to the immediate queue are processed inside `event_poll` but after the `uv_run` call. This is required because libuv event loop does not support recursion, and processing events may result in other `event_poll` calls. - Events pushed to the deferred queue are processed later by calling `event_process(true)`. This is required to "trick" vim into treating all asynchronous events as special keypresses, which is the least obtrusive way of introducing asynchronicity into the editor. - RStream instances will now forward the `defer` flag to the `event_push` call.
| * events: Refactor event_poll to use stack-allocated timer handlesThiago de Arruda2014-06-18
| |
| * channel: Make channel_{un}subscribe abort the program for invalid idsThiago de Arruda2014-06-18
| | | | | | | | | | | | These functions will never be called directly by the user so bugs are the only reason for passing invalid channel ids. Instead of returning silently we abort to improve bug detection.
| * job: Refactor job_write to receive WBuffer instances.Thiago de Arruda2014-06-18
| | | | | | | | This was done to give more control over memory management to job_write callers.
| * job: Add defer flag and setter methodThiago de Arruda2014-06-18
| | | | | | | | | | This is has the same effect as the RStream 'defer' flag, but also works for the job's exit event.
| * job: Refactor to use pointers instead of idsThiago de Arruda2014-06-18
| | | | | | | | | | 'job_start' returns the id as an out paramter, and the 'job_find' function is now used by eval.c to translate job ids into pointers.
| * rstream: Implement the rstream_set_defer functionThiago de Arruda2014-06-18
| | | | | | | | | | This function will be used to temporarily change the `defer` flag on rstream instances.
| * rstream: Rename RStream `async` flag to `defer`Thiago de Arruda2014-06-18
| | | | | | | | | | The name `async` was not appropriate to describe the behavior enabled by the flag.
| * wstream: Refactor wstream_new_buffer/wstream_writeThiago de Arruda2014-06-18
| | | | | | | | | | | | | | | | - Removed 'copy' parameter from `wstream_new_buffer`. Callers simply pass a copy of the buffer if required. - Added a callback parameter, which is used to notify callers when the data is successfully written. The callback is also used to free the buffer(if required) and is compatible with `free` from the standard library.
| * wstream: Change wstream_write failure behaviorThiago de Arruda2014-06-17
| | | | | | | | | | | | | | | | | | | | | | Before this change, any write that could cause a WStream instance to use more than `maxmem` would fail, which is not acceptable when writing big chunks of data. (This could happen when returning contents from a big buffer through the API, for example). Writes of any size are now allowed, but before we check if the currently used memory doesn't break the limit. This should be enough to prevent us from stacking data when talking to a locked process.
| * msgpack_rpc: Deal with deserialization failuresThiago de Arruda2014-06-17
|/ | | | | | | | | There seems to be no way to deal with failures when calling `msgpack_unpacker_next`, so this reimplements that function as `msgpack_rpc_unpack`, which has an additional result for detecting failures. On top of that, we make use of the new function to properly return msgpack-rpc errors when something bad happens.
* Merge #787 'removal of redundant OOM error handling'Justin M. Keyes2014-06-16
|\
| * Remove unnecessary comments and unnecessary returnFelipe Oliveira Carvalho2014-06-16
| |
| * Refator return logic in ses_put_fname()Felipe Oliveira Carvalho2014-06-16
| |
| * No OOM for list_alloc()Felipe Oliveira Carvalho2014-06-16
| |
| * Fix some "out of memory" comments and few cosmeticsFelipe Oliveira Carvalho2014-06-16
| |
| * No OOM in ExpandOldSetting()Felipe Oliveira Carvalho2014-06-16
| |
| * No OOM in reverse_text()Felipe Oliveira Carvalho2014-06-16
| |
| * No OOM in concat_str() (few remaining cases)Felipe Oliveira Carvalho2014-06-16
| | | | | | | | Also fixed the duplicated declaration (path.c and strings.c)
| * No OOM in vim_strsave_escape_csi()Felipe Oliveira Carvalho2014-06-16
| |
| * No OOM in home_replace_save()Felipe Oliveira Carvalho2014-06-16
| |
| * No OOM in vim_strsave_fnameescape()Felipe Oliveira Carvalho2014-06-16
| |
| * No OOM in enc_canonize()Felipe Oliveira Carvalho2014-06-16
| | | | | | | | Fix a `return FAIL` that should be `return NULL` in `enc_locale()`
| * No OOM in vim_strsave_escaped[_ext]()Felipe Oliveira Carvalho2014-06-16
| |
| * No OOM in vim_strnsave_up()Felipe Oliveira Carvalho2014-06-16
| | | | | | | | And some cleanup in strsave_up()
| * No OOM in popup_mode_name()Felipe Oliveira Carvalho2014-06-16
| |
| * au_get_grouparg() can't fail, remove error handlingFelipe Oliveira Carvalho2014-06-16
| |
| * No OOM in msg_show_console_dialog()Felipe Oliveira Carvalho2014-06-16
| |
| * do_map() won't return 4 (OOM) anymoreFelipe Oliveira Carvalho2014-06-16
| |
| * No OOM in ExpandGeneric()Felipe Oliveira Carvalho2014-06-16
| |
| * No OOM in expand_shellcmd()Felipe Oliveira Carvalho2014-06-16
| |
| * No OOM in autoload_name()Felipe Oliveira Carvalho2014-06-16
| |
| * No OOM in save_cmdline_alloc()Felipe Oliveira Carvalho2014-06-16
| |
| * No OOM in list_insert_tv() and list_extend()Felipe Oliveira Carvalho2014-06-16
| |
| * No OOM in listitem_alloc()Felipe Oliveira Carvalho2014-06-16
| |
| * No OOM in dictitem_copyFelipe Oliveira Carvalho2014-06-16
| |
| * No OOM in hash_may_resize() and hash_add_item()Felipe Oliveira Carvalho2014-06-16
| | | | | | | | hash_add() can still return FAIL if the key already exists.
| * No OOM in dictitem_alloc()Felipe Oliveira Carvalho2014-06-16
| |
| * No OOM in dict_alloc() and rettv_dict_alloc()Felipe Oliveira Carvalho2014-06-16
|/
* Merge #743 'Replace vim_strncpy with strlcpy'Justin M. Keyes2014-06-13
|\
| * Replace vim_strncpy calls: message.cDouglas Schneider2014-06-13
| |
| * Replace vim_strncpy calls: eval.cDouglas Schneider2014-06-13
| |
| * Replace vim_strncpy calls: screen.cDouglas Schneider2014-06-13
| |
| * Replace vim_strncpy calls: ex_docmd.cDouglas Schneider2014-06-13
| |