Age | Commit message (Collapse) | Author |
|
Problem: MS-Windows: cannot build with WINVER set to 0x0501.
Solution: Only use inet_ntop() when available. (Ozaki Kiichi, closes #5946)
|
|
Problem: Clearing a struct is verbose.
Solution: Define and use CLEAR_FIELD() and CLEAR_POINTER().
|
|
Problem: No IPv6 support for channels.
Solution: Add IPv6 support. (Ozaki Kiichi, closes #5893)
|
|
Problem: Using the same loop in many places.
Solution: Define more FOR_ALL macros. (Yegappan Lakshmanan, closes #5339)
|
|
Problem: Not parsing messages recursively breaks the govim plugin.
Solution: When called recursively do handle messages but do not close
channels.
|
|
Problem: Cannot set the highlight group for a specific terminal.
Solution: Add the "highlight" option to term_start(). (closes #5818)
|
|
Problem: channel_parse_messages() fails when called recursively.
Solution: Return for a recursive call. (closes #5835)
|
|
Problem: Channel contents might be used after being freed.
Solution: Reset the job channel before freeing the channel.
|
|
Problem: Channel contents might be freed twice.
Solution: Call either channel_free_channel() or channel_free(), not both.
(Nobuhiro Takasaki, closes #5835)
|
|
Problem: Problems parsing :term arguments.
Solution: Improve parsing, fix memory leak, add tests. (Ozaki Kiichi,
closes #5536)
|
|
Problem: Build fails with old compiler.
Solution: Do not use anonymous unions. (John Marriott)
|
|
Problem: Non-materialized range() list causes problems. (Fujiwara Takuya)
Solution: Materialize the list where needed.
|
|
Problem: Maintaining a Vim9 branch separately is more work.
Solution: Merge the Vim9 script changes.
|
|
Problem: Coverity warning for possible use of NULL pointer.
Solution: Check argv is not NULL.
|
|
Problem: Memory leak when starting a job fails.
Solution: Free the list of arguments. (Ozaki Kiichi, closes #5510)
|
|
Problem: Saving and restoring called_emsg is clumsy.
Solution: Count the number of error messages.
|
|
Problem: MS-Windows: test for blank job fails
Solution: Check before escaping.
|
|
Problem: MS-Windows: test for empty job fails
Solution: Check for error message, make it also fail on Unix.
|
|
Problem: MS-Windows: crash with empty job command.
Solution: Check for NULL result. (Yasuhiro Matsumoto, closes #5390)
|
|
Problem: Using old C style comments.
Solution: Use // comments where appropriate.
|
|
Problem: Not clear why channel log file ends.
Solution: Add a "closing" line.
|
|
Problem: The terminal API is limited and can't be disabled.
Solution: Add term_setapi() to set the function prefix. (Ozaki Kiichi,
closes #2907)
|
|
Problem: Get many log messages when waiting for a typed character.
Solution: Do not repeat the repeated messages when nothing happens.
|
|
Problem: MS-Windows: compiler warnings for unused arguments.
Solution: Add UNUSED. (Yegappan Lakshmanan, closes #4963)
|
|
Problem: Cannot check the current state.
Solution: Add the state() function.
|
|
Problem: SafeState may be triggered at the wrong moment.
Solution: Move it up higher to after where messages are processed. Add a
SafeStateAgain event to tigger there.
|
|
Problem: No easy way to process postponed work. (Paul Jolly)
Solution: Add the SafeState autocommand event.
|
|
Problem: Some source files are too big.
Solution: Move buffer and window related functions to evalbuffer.c and
evalwindow.c. (Yegappan Lakshmanan, closes #4898)
|
|
Problem: Compiler nags for uninitialized variable and unused function.
Solution: Add unnecessary initialization. Move function inside #ifdef.
|
|
Problem: Functions used in one file are global.
Solution: Add "static". (Yegappan Lakshmanan, closes #4840)
|
|
Problem: Function call functions have too many arguments.
Solution: Pass values in a funcexe_T struct.
|
|
Problem: Text added with a job to another buffer isn't displayed.
Solution: Update topline after adding a line. (closes #4745)
|
|
Problem: Ubsan warns for possibly passing NULL pointer.
Solution: Skip code when length is zero. (Dominique Pelle, closes #4631)
|
|
Problem: Vim may delay processing messages on a json channel. (Pontus
Leitzler)
Solution: Try parsing json when checking if there is readahead.
|
|
Problem: The evalfunc.c file is getting too big.
Solution: Move channel and job related functions to channel.c.
|
|
Problem: Callbacks may be garbage collected.
Solution: Set reference in callbacks. (Ozaki Kiichi, closes #4564)
|
|
Problem: ch_evalexpr() hangs when used recursively. (Paul Jolly)
Solution: Change ch_block_id from a single number to a list of IDs to wait
on.
|
|
Problem: Cannot reuse a buffer when loading a screen dump.
Solution: Add the "bufnr" option.
|
|
Problem: Code to handle callbacks is duplicated.
Solution: Add callback_T and functions to deal with it.
|
|
Problem: Alloc() returning "char_u *" causes a lot of type casts.
Solution: Have it return "void *". (Mike Williams) Define ALLOC_ONE() to
check the simple allocations.
|
|
Problem: Unnecessary type casts.
Solution: Remove type casts from alloc() and lalloc() calls. (Mike Williams)
|
|
Problem: Unessesary type casts for lalloc().
Solution: Remove type casts. Change lalloc(size, TRUE) to alloc(size).
|
|
Problem: Using "int" for alloc() often results in compiler warnings.
Solution: Use "size_t" and remove type casts. Remove alloc_check(), Vim
only works with 32 bit ints anyway.
|
|
Problem: Computing function length name in many places.
Solution: compute name length in call_func().
|
|
Problem: Coverity warning for using uninitialized variable.
Solution: Clear exarg_T.
|
|
Problem: A lot of code is shared between vim.exe and gvim.exe.
Solution: Optionally put the shared code in vim.dll. (Ken Takata,
closes #4287)
|
|
Problem: Typos and small problems in source files.
Solution: Small fixes.
|
|
Problem: Json encoded string is sometimes missing the final NUL.
Solution: Add the NUL. Also for log messages.
|
|
Problem: Warnings from clang static analyzer. (Yegappan Lakshmanan)
Solution: Fix relevant warnings.
|
|
Problem: ch_read() may return garbage if terminating NL is missing.
Solution: Add terminating NUL. (Ozaki Kiichi, closes #4065)
|