Original commit message for patch 7.4.592:
Problem: When doing ":e foobar" when already editing "foobar" and 'buftype'
is "nofile" the buffer is cleared. (Xavier de Gaye)
Solution: Do no clear the buffer.
https://github.com/vim/vim/commit/v7-4-592
The change in this patch was amended in patch 7.4.596 to fix an #ifdef
problem, but soon after, in patch 7.4.632, it was reverted wholesale.
See https://groups.google.com/d/msg/vim_dev/SWw5znc3W-8/TDjkUVYfABIJ
This is done for consistency with '-h' and '--help'.
While here, also move the mch_exit() call out of usage
to make it clear what is being done.
Helped-by: Justin M. Keyes <justinkz@gmail.com>
Problem: Conceal does not work properly with 'linebreak'. (cs86661)
Solution: Save and restore boguscols. (Christian Brabandt)
https://github.com/vim/vim/commit/v7-4-587
Problem: Compiler warnings for unitinialized variables. (John Little)
Solution: Initialize the variables.
https://github.com/vim/vim/commit/v7-4-581
Not applicable. Depended on patch 7.4.560, which was NA, see #1743.
Problem: Redrawing problem with 'relativenumber' and 'linebreak'.
Solution: Temporarily reset 'linebreak' and restore it in more places.
(Christian Brabandt)
https://github.com/vim/vim/commit/v7-4-576Closes#1946
It's the second argument, buf, that cannot be NULL. fname is allowed to
be NULL. The issue only showed up on the release build when trying to
use NULL for fname and the test would segfault unexpectedly (because the
NULL check for fname was being optimized out due to the function
attributes).
FullName_save() also incorrectly assumes that fname cannot be NULL
(possibly because of the attribute on vim_FullName), so fix that site as
well. This didn't have a corresponding test, so it wasn't visible as
test breakage, but did generate a tautological comparison warning in the
release build under Clang.
The "*" flag in 'cpoptions' makes the command :* execute the contents of
a register. Removed because
1. the same functionality exists as :@
2. it hides :* as a useful command-line shortcut for :'<,'>
3. unlike :@ it cannot be used with the * register
Helped-by: Michael Reed <m.reed@mykolab.com>
suspicious_sizeof: Passing argument 168UL /* sizeof (ufunc_T) */ * todo
to function xmalloc and then casting the return value to ufunc_T ** is
suspicious.
suspicious_sizeof: Passing argument 8UL /* sizeof (char const **) */ to
function xcalloc and then casting the return value to char ** is
suspicious.
In this particular case sizeof (char const **) happens to be
equal to sizeof (char const *), but this is not a portable as
Problem: Using ctrl_x_mode as if it contains flags.
Solution: Don't use AND with CTRL_X_OMNI. (Hirohito Higashi)
https://github.com/vim/vim/commit/v7-4-590
It was already included in neovim, see #2527.
Problem: FEAT_OSFILETYPE is used even though it's never defined.
Solution: Remove the code. (Christian Brabandt)
https://github.com/vim/vim/commit/v7-4-564
Not applicable, this code has already been removed in Neovim. Included
some of the style tweaks.