based on #2429 by @Hettomei
Problem: Still sometimes Vim enters Replace mode when starting up.
Solution: Use a different solution in detecting the termresponse and
location response. (Hayaki Saito)
https://code.google.com/p/vim/source/detail?r=v7-4-389
The upstream patch touched a lot of files which don't exist in nvim,
hence the small size of this commit.
These options were never implemented in Vim. They are documented under
|missing-options| in runtime/doc/vi_diff.txt:
'autoprint'
'beautify'
'flash'
'graphic'
'hardtabs'
'mesg'
'novice'
'open'
'optimize'
'redraw'
'slowopen'
'sourceany'
'w300'
'w1200'
'w9600'
References #2548.
Problem : Dereference of null pointer @ 5816.
Diagnostic : False positive.
Rationale : first_tabpage is assumed to be NULL after calling
goto_tabpage(), which should not be possible (first_tabpage
should be not NULL before calling it, and only changed to
another valid tab page).
Resolution : Assert first_tabpage after calling goto_tabpage().
Helped-by: oni-link <knil.ino@gmail.com>
Problem : Dereference of null pointer @ 1909.
Diagnostic : False positive.
Rationale : Suggested path error first assumes tp == NULL and later one
valid_tabpage(tp), which is not possible.
Resolution : Assert tp != NULL if valid_tabpage(tp).
Problem : Dereference of null pointer @ 1903.
Diagnostic : False positive.
Rationale : Suggested error path first assumes wp == NULL and later one
win_valid(wp), which is not possible.
Resolution : Assert wp != NULL if win_valid(wp).
Problem: Window drawn wrong when 'laststatus' is zero and there is a
command-line window. (Yclept Nemo)
Solution: Set the status height a bit later. (Christian Brabandt)
https://github.com/vim/vim/commit/v7-4-706
Problem: Insert mode completion with complete() may have CTRL-L work like
CTRL-P.
Solution: Handle completion with complete() differently. (Yasuhiro
Matsumoto, Christian Brabandt, Hirohito Higashi)
https://github.com/vim/vim/commit/v7-4-653
* Set JEMALLOC_NO_DEMANGLE to be able to use `je_*` functions,
regardless of how jemalloc was compiled (--with-jemalloc-prefix)
* Show jemalloc information in Neovim's version output.
Resolve#2449.
For built-in dependencies, shared libraries are removed and static
linking is always used.
For systemwide dependencies, static linking should not be used.
Problem: Ranges for arguments, buffers, tabs, etc. are not checked to
be valid but limited to the maximum. This can cause the
wrong
thing to happen.
Solution: Give an error for an invalid value. (Marcin Szamotulski)
Use windows range for ":wincmd".
https://code.google.com/p/vim/source/detail?r=v7-4-565
Problem: Using a range for window and buffer commands has a few
problems.
Cannot specify the type of range for a user command.
Solution: Add the -addr argument for user commands. Fix problems.
(Marcin Szamotulski
https://code.google.com/p/vim/source/detail?name=v7-4-542
Patch 7.4.539 (after 7.4.530)
Problem: Crash when computing buffer count. Problem with range for
user commands. Line range wrong in Visual area.
Solution: Avoid segfault in compute_buffer_local_count(). Check for
CMD_USER when checking type of range. (Marcin Szamotulski)
https://code.google.com/p/vim/source/detail?name=v7-4-539
Problem: When using Insert mode completion combined with autocommands the
redo command may not work.
Solution: Do not save the redo buffer when executing autocommands. (Yasuhiro
Matsumoto)
https://github.com/vim/vim/commit/v7-4-630
* Link to the commit details on GitHub for a tagged version.
* Non-tagged patches (runtime updates) are still linked to
Google Code because they are identified by a Mercurial commit hash.
After left clicking on a tab in the tabline, the "in_tab_line" variable wasn't
set to 'false' and every following mouse action assumed still being on the
tabline which messed up visual selection etc.
Problem : Dead increment @ 1795.
Diagnostic : Harmless issue.
Rationale : Line was necessary before (indent was used by the following
while loop), but now that loop is removed, assignment is
indeed dead.
Resolution : Remove line.
Problem : Argument with 'nonnull' attribute passed null @ 4227.
Diagnostic : Harmless issue.
Rationale : It's true we're calling memset with NULL pointer, but it's
also true we're doing it with zero size. We just thought
that would work and do nothing (it was a way of avoiding
to add a guard). It doesn't work, though, as memset
requires nonnull arguments.
Resolution : Add guard to avoid null argument.