| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Problem: Assert functions don't return anything.
Solution: Return non-zero when the assertion fails.
|
|
|
|
|
| |
Problem: No compiler warning for wrong format in vim_snprintf().
Solution: Add printf attribute for gcc. Fix reported problems.
|
|
|
|
|
| |
Problem: The terminal API "drop" command doesn't support options.
Solution: Implement the options.
|
|
|
|
|
|
| |
Problem: Too many #ifdefs.
Solution: Graduate the +autocmd feature. Takes away 450 #ifdefs and
increases code size of tiny Vim by only 40 Kbyte.
|
|
|
|
|
| |
Problem: Assert_equalfile() does not close file descriptors. (Coverity)
Solution: Close the file descriptors.
|
|
|
|
|
|
| |
Problem: Cannot write and read terminal screendumps.
Solution: Add term_dumpwrite(), term_dumpread() and term_dumpdiff().
Also add assert_equalfile().
|
|
|
|
|
| |
Problem: Some code for the debugger watch expression is clumsy.
Solution: Clean up the code.
|
|
|
|
|
| |
Problem: Cannot test if a command causes a beep.
Solution: Add assert_beeps().
|
|
|
|
|
| |
Problem: Debugger can't break on a condition. (Charles Campbell)
Solution: Add ":breakadd expr". (Christian Brabandt, closes #859)
|
|
|
|
|
|
| |
Problem: Clearing a pointer takes two lines.
Solution: Add VIM_CLEAR() and replace vim_clear(). (Hirohito Higashi,
closes #2629)
|
|
|
|
|
|
| |
Problem: Cannot intercept a yank command.
Solution: Add the TextYankPost autocommand event. (Philippe Vaucher et al.,
closes #2333)
|
|
|
|
|
| |
Problem: Cannot call a dict function in autoloaded dict.
Solution: Call get_lval() passing the read-only flag.
|
|
|
|
|
|
| |
Problem: Function argument with only dash is seen as number zero. (Wang
Shidong)
Solution: See a dash as a string. (Christian Brabandt)
|
|
|
|
|
|
| |
Problem: Cannot use a lambda for the skip argument to searchpair().
Solution: Evaluate a partial, funcref and lambda. (LemonBoy, closes #1454,
closes #2265)
|
|
|
|
|
| |
Problem: Newer gcc warns for implicit fallthrough.
Solution: Consistently use a FALLTHROUGH comment. (Christian Brabandt)
|
|
|
|
|
| |
Problem: Actual fg and bg colors of terminal are unknown.
Solution: Add t_RF. Store response to t_RB and t_RF, use for terminal.
|
|
|
|
|
| |
Problem: When E734 is given option is still set.
Solution: Assign NULL to "s". (Christian Brabandt)
|
|
|
|
|
| |
Problem: Cannot define a toolbar for a window.
Solution: Add a window-local toolbar.
|
|
|
|
|
|
| |
Problem: FEAT_WINDOWS adds a lot of #ifdefs while it is nearly always
enabled and only adds 7% to the binary size of the tiny build.
Solution: Graduate FEAT_WINDOWS.
|
|
|
|
|
|
| |
Problem: Gnome terminal echoes t_RC.
Solution: Detect Gnome terminal by the version string. Add v: variables for
all the term responses.
|
|
|
|
|
|
|
| |
Problem: When using a job or channel value as a dict value, when turning it
into a string the quotes are missing.
Solution: Add quotes to the job and channel values. (Yasuhiro Matsumoto,
closes #1930)
|
|
|
|
|
|
| |
Problem: Running tests fails when stdin is /dev/null. (James McCoy)
Solution: Do not bail out from getting input if the --not-a-term argument
was given. (closes #1460)
|
|
|
|
|
| |
Problem: Job of terminal may be garbage collected.
Solution: Set copyID on job in terminal. (Ozaki Kiichi)
|
|
|
|
|
| |
Problem: Duplication of code for adding a list or dict return value.
Solution: Add rettv_dict_set() and rettv_list_set(). (Yegappan Lakshmanan)
|
|
|
|
|
|
| |
Problem: Cannot add a context to locations.
Solution: Add the "context" entry in location entries. (Yegappan Lakshmanan,
closes #1012)
|
|
|
|
|
|
| |
Problem: Extra line break in verbosefile when using ":echomsg". (Ingo
Karkat)
Solution: Don't call msg_start(). (closes #1618)
|
|
|
|
|
| |
Problem: getpos() can return a negative line number. (haya14busa)
Solution: Handle a zero topline and botline. (closes #1613)
|
|
|
|
|
| |
Problem: The client-server test may hang when failing.
Solution: Set a timer. Add assert_report()
|
|
|
|
|
|
| |
Problem: Using g< after :for does not show the right output. (Marcin
Szamotulski)
Solution: Call msg_sb_eol() in :echomsg.
|
|
|
|
|
| |
Problem: Some macros are in lower case.
Solution: Make a few more macros upper case.
|
|
|
|
|
|
| |
Problem: Some macros are in lower case.
Solution: Make a few more macros upper case. Avoid lower case macros use an
argument twice.
|
|
|
|
|
| |
Problem: Leaking memory when setting v:completed_item.
Solution: Or the flags instead of setting them.
|
|
|
|
|
| |
Problem: Sometimes VimL is used, which is confusing.
Solution: Consistently use "Vim script". (Hirohito Higashi)
|
|
|
|
|
|
| |
Problem: The condition for when a typval needs to be cleared is too
complicated.
Solution: Init the type to VAR_UNKNOWN and clear it always.
|
|
|
|
|
| |
Problem: islocked('d.changedtick') does not work.
Solution: Make it work.
|
|
|
|
|
| |
Problem: Unlet command leaks memory. (Nikolai Pavlov)
Solution: Free the memory on error. (closes #1497)
|
|
|
|
|
|
| |
Problem: b:changedtick can be unlocked, even though it has no effect.
(Nikolai Pavlov)
Solution: Add a check and error E940. (closes #1496)
|
|
|
|
|
|
| |
Problem: Can't access b:changedtick from a dict reference.
Solution: Make changedtick a member of the b: dict. (inspired by neovim
#6112)
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
Problem: Ubsan reports errors for integer overflow.
Solution: Define macros for minimum and maximum values. Select an
expression based on the value. (Mike Williams)
|
|
|
|
|
| |
Problem: The error message from assert_notequal() is confusing.
Solution: Only mention the expected value.
|
|
|
|
|
|
|
| |
Problem: When compiling with EBCDIC defined the build fails. (Yaroslav
Kuzmin)
Solution: Move sortFunctions() to the right file. Avoid warning for
redefining __SUSV3.
|
|
|
|
|
| |
Problem: EMSG() is sometimes used for internal errors.
Solution: Change them to IEMSG(). (Dominique Pelle) And a few more.
|
|
|
|
|
|
|
| |
Problem: On MS-Windows some float functions return a different value when
passed unusual values. strtod() doesn't work for "inf" and "nan".
Solution: Accept both results. Fix str2float() for MS-Windows. Also
reorder assert function arguments.
|
|
|
|
|
|
|
| |
Problem: When the channel callback gets job info the job may already have
been deleted. (lifepillar)
Solution: Do not delete the job when the channel is still useful. (ichizok,
closes #1242, closes #1245)
|
|
|
|
|
| |
Problem: Using freed memory with recursive function call. (Dominique Pelle)
Solution: Make a copy of the function name.
|
|
|
|
|
|
| |
Problem: Cannot make Vim fail on an internal error.
Solution: Add IEMSG() and IEMSG2(). (Domenique Pelle) Avoid reporting an
internal error without mentioning where.
|
|
|
|
|
|
| |
Problem: A channel is closed when reading on stderr or stdout fails, but
there may still be something to read on another part.
Solution: Turn ch_to_be_closed into a bitfield. (Ozaki Kiichi)
|
|
|
|
|
| |
Problem: Build fails.
Solution: Include missing change.
|
|
|
|
|
| |
Problem: Modelines in source code are inconsistant.
Solution: Use the same line in most files. Add 'noet'. (Naruhiko Nishino)
|