Bram Moolenaar [Sun, 22 Jan 2017 14:05:12 +0000 (15:05 +0100)]
patch 8.0.0212: buffer for key name may be too small
Problem: The buffer used to store a key name theoreticaly could be too
small. (Coverity)
Solution: Count all possible modifier characters. Add a check for the
length just in case.
Bram Moolenaar [Sat, 21 Jan 2017 13:45:09 +0000 (14:45 +0100)]
patch 8.0.0209: cursor binding does not work with :substitute
Problem: When using :substitute with the "c" flag and 'cursorbind' is set
the cursor is not updated in other windows.
Solution: Call do_check_cursorbind(). (Masanori Misono)
Bram Moolenaar [Fri, 20 Jan 2017 20:51:53 +0000 (21:51 +0100)]
patch 8.0.0208: internally used commands end up in history
Problem: Internally used commands for CTRL-Z and mouse click end up in
history. (Matthew Malcomson)
Solution: Use do_cmdline_cmd() instead of stuffing them in the readahead
buffer. (James McCoy, closes #1395)
Bram Moolenaar [Tue, 17 Jan 2017 18:20:15 +0000 (19:20 +0100)]
patch 8.0.0203: order of complication flags is sometimes wrong
Problem: Order of complication flags is sometimes wrong.
Solution: Put interface-specific flags before ALL_CFLAGS. (idea by Yousong
Zhou, closes #1100)
Bram Moolenaar [Tue, 17 Jan 2017 15:56:28 +0000 (16:56 +0100)]
patch 8.0.0199: compiler warnings for libcall
Problem: Warning for an unused parameter when the libcall feature is
disabled. Warning for a function type cast when compiling with
-pedantic.
Solution: Add UNUSED. Use a different type cast. (Damien Molinier)
Bram Moolenaar [Tue, 17 Jan 2017 15:27:10 +0000 (16:27 +0100)]
patch 8.0.0198: some syntax arguments take effect even after "if 0"
Problem: Some syntax arguments take effect even after "if 0". (Taylor
Venable)
Solution: Properly skip the syntax statements. Make "syn case" and "syn
conceal" report the current state. Fix that "syn clear" didn't
reset the conceal flag. Add tests for :syntax skipping properly.
Bram Moolenaar [Mon, 16 Jan 2017 21:37:42 +0000 (22:37 +0100)]
patch 8.0.0196: profile test is slo and does not work on MS-Windows
Problem: The test for :profile is slow and does not work on MS-Windows.
Solution: Use the "-es" argument. (Dominique Pelle) Swap single and double
quotes for system()
Bram Moolenaar [Mon, 16 Jan 2017 19:53:34 +0000 (20:53 +0100)]
patch 8.0.0195: fail to jump to static tag in current file
Problem: Jumping to a tag that is a static item in the current file fails.
(Kazunobu Kuriyama)
Solution: Make sure the first byte of the tag key is not NUL. (Suggested by
James McCoy, closes #1387)
Bram Moolenaar [Sun, 15 Jan 2017 15:59:07 +0000 (16:59 +0100)]
patch 8.0.0191: can't build with Ruby on some systems
Problem: Some systems do not have ruby_sysinit(), causing the build to
fail.
Solution: Clean up how ruby_sysinit() and NtInitialize() are used. (Taro
Muraoka)
Bram Moolenaar [Sun, 15 Jan 2017 15:52:51 +0000 (16:52 +0100)]
patch 8.0.0190: finding duplicate tags uses a slow linear search
Problem: Detecting duplicate tags uses a slow linear search.
Solution: Use a much faster hash table solution. (James McCoy, closes #1046)
But don't add hi_keylen, it makes hash tables 50% bigger.
Bram Moolenaar [Sun, 15 Jan 2017 12:53:49 +0000 (13:53 +0100)]
patch 8.0.0188: redrawing for 'cursorbind' is inefficient
Problem: Using NOT_VALID for redraw_later() to update the cursor
line/column highlighting is not efficient.
Solution: Call validate_cursor() when 'cul' or 'cuc' is set.
Bram Moolenaar [Sat, 14 Jan 2017 18:24:52 +0000 (19:24 +0100)]
patch 8.0.0184: when an error is caught Vim still exits with non-zero result
Problem: When in Ex mode and an error is caught by try-catch, Vim still
exits with a non-zero exit code.
Solution: Don't set ex_exitval when inside a try-catch. (partly by Christian
Brabandt)
Bram Moolenaar [Sat, 14 Jan 2017 14:52:46 +0000 (15:52 +0100)]
patch 8.0.0182: cursor ilne not update when 'cursorbind' is set
Problem: When 'cursorbind' and 'cursorline' are set, but 'cursorcolumn' is
not, then the cursor line highlighting is not updated. (Hirohito
Higashi)
Solution: Call redraw_later() with NOT_VALID.
Bram Moolenaar [Sat, 14 Jan 2017 13:54:33 +0000 (14:54 +0100)]
patch 8.0.0181: with cursorbind set cursor column highlighting is off
Problem: When 'cursorbind' and 'cursorcolumn' are both on, the column
highlignt in non-current windows is wrong.
Solution: Add validate_cursor(). (Masanori Misono, closes #1372)
Bram Moolenaar [Sat, 14 Jan 2017 13:36:08 +0000 (14:36 +0100)]
patch 8.0.0180: error E937 is used twice
Problem: Error E937 is used both for duplicate key in JSON and for trying
to delete a buffer that is in use.
Solution: Rename the JSON error to E938. (Norio Takagi, closes #1376)
Bram Moolenaar [Sat, 14 Jan 2017 13:28:30 +0000 (14:28 +0100)]
patch 8.0.0179: cannot have a local value for 'formatprg'
Problem: 'formatprg' is a global option but the value may depend on the
type of buffer. (Sung Pae)
Solution: Make 'formatprg' global-local. (closes #1380)
Bram Moolenaar [Fri, 13 Jan 2017 21:01:02 +0000 (22:01 +0100)]
patch 8.0.0177: BufEnter autocommand not fired for a directory
Problem: When opening a buffer on a directory and inside a try/catch then
the BufEnter event is not triggered.
Solution: Return NOTDONE from readfile() for a directory and deal with the
three possible return values. (Justin M. Keyes, closes #1375,
closes #1353)
Bram Moolenaar [Thu, 12 Jan 2017 20:44:49 +0000 (21:44 +0100)]
patch 8.0.0175: setting language on MS-Windows does not always work
Problem: Setting language in gvim on MS-Windows does not work when
libintl.dll is dynamically linked with msvcrt.dll.
Solution: Use putenv() from libintl as well. (Ken Takata, closes #1082)
Bram Moolenaar [Thu, 12 Jan 2017 19:28:25 +0000 (20:28 +0100)]
patch 8.0.0174: executing "locale -a" on MS-Windows needlessly
Problem: For completion "locale -a" is executed on MS-Windows, even though
it most likely won't work.
Solution: Skip executing "locale -a" on MS-Windows. (Ken Takata)
Bram Moolenaar [Thu, 12 Jan 2017 19:06:33 +0000 (20:06 +0100)]
patch 8.0.0173: build fails with EBCDIC defined
Problem: When compiling with EBCDIC defined the build fails. (Yaroslav
Kuzmin)
Solution: Move sortFunctions() to the right file. Avoid warning for
redefining __SUSV3.
Bram Moolenaar [Wed, 11 Jan 2017 21:40:19 +0000 (22:40 +0100)]
patch 8.0.0172: command line window does not work
Problem: The command selected in the command line window is not executed.
(Andrey Starodubtsev)
Solution: Save and restore the command line at a lower level. (closes #1370)
Bram Moolenaar [Tue, 10 Jan 2017 15:12:29 +0000 (16:12 +0100)]
patch 8.0.0167: str2nr()/str2float() fail with negative values
Problem: str2nr() and str2float() do not always work with negative values.
Solution: Be more flexible about handling signs. (LemonBoy, closes #1332)
Add more tests.
Bram Moolenaar [Tue, 10 Jan 2017 14:15:37 +0000 (15:15 +0100)]
patch 8.0.0166: JSON with a duplicate key gives an internal error
Problem: JSON with a duplicate key gives an internal error. (Lcd)
Solution: Give a normal error. Avoid an error when parsing JSON from a
remote client fails.
Bram Moolenaar [Sun, 8 Jan 2017 19:00:04 +0000 (20:00 +0100)]
patch 8.0.0159: crash on startup when updating tabline
Problem: Using a NULL pointer when using feedkeys() to trigger drawing a
tabline.
Solution: Skip drawing a tabline if TabPageIdxs is NULL. (Dominique Pelle)
Also fix recursing into getcmdline() from the cmd window.
Bram Moolenaar [Sun, 8 Jan 2017 18:25:40 +0000 (19:25 +0100)]
patch 8.0.0158: float funcion test fails on MS-Windows
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.
Bram Moolenaar [Sun, 8 Jan 2017 16:46:20 +0000 (17:46 +0100)]
patch 8.0.0155: ubsan complains about NULL pointer
Problem: When sorting zero elements a NULL pointer is passed to qsort(),
which ubsan warns for.
Solution: Don't call qsort() if there are no elements. (Dominique Pelle)
Bram Moolenaar [Sun, 8 Jan 2017 12:26:03 +0000 (13:26 +0100)]
patch 8.0.0151: passing buffer content to system() is clumsy
Problem: To pass buffer content to system() and systemlist() one has to
first create a string or list.
Solution: Allow passing a buffer number. (LemonBoy, closes #1240)
Bram Moolenaar [Sat, 7 Jan 2017 19:39:53 +0000 (20:39 +0100)]
patch 8.0.0150: completion for :filter does not skip the pattern
Problem: When the pattern of :filter does not have a separator then
completion of the command fails.
Solution: Skip over the pattern. (Ozaki Kiichi, clodes #1299)
Bram Moolenaar [Sat, 7 Jan 2017 15:14:57 +0000 (16:14 +0100)]
patch 8.0.0149: :earlier does not work after reading the undo file
Problem: ":earlier" and ":later" do not work after startup or reading the
undo file.
Solution: Use absolute time stamps instead of relative to the Vim start
time. (Christian Brabandt, Pavel Juhas, closes #1300, closes
#1254)
Bram Moolenaar [Sat, 7 Jan 2017 14:39:43 +0000 (15:39 +0100)]
patch 8.0.0148: wrong indent in C preprocessor with line continuation
Problem: When a C preprocessor statement has two line continuations the
following line does not have the right indent. (Ken Takata)
Solution: Add the indent of the previous continuation line. (Hirohito
Higashi)
Bram Moolenaar [Fri, 6 Jan 2017 17:16:19 +0000 (18:16 +0100)]
patch 8.0.0146: termguicolors uses wrong colors on MS-Windows with ConEmu
Problem: When using 'termguicolors' on MS-Windows the RGB definition causes
the colors to be wrong.
Solution: Undefined RGB and use our own. (Gabriel Barta)
Bram Moolenaar [Mon, 2 Jan 2017 16:31:24 +0000 (17:31 +0100)]
patch 8.0.0140
Problem: Pasting inserted text in Visual mode does not work properly.
(Matthew Malcomson)
Solution: Stop Visual mode before stuffing the inserted text. (Christian
Brabandt, from neovim #5709)
Bram Moolenaar [Mon, 2 Jan 2017 14:26:27 +0000 (15:26 +0100)]
patch 8.0.0137
Problem: When 'maxfuncdepth' is set above 200 the nesting is limited to
200. (Brett Stahlman)
Solution: Allow for Ex command recursion depending on 'maxfuncdepth'.
Bram Moolenaar [Mon, 2 Jan 2017 13:57:08 +0000 (14:57 +0100)]
patch 8.0.0136
Problem: When using indent folding and changing indent the wrong fold is
opened. (Jonathan Fudger)
Solution: Open the fold under the cursor a bit later. (Christian Brabandt)
Bram Moolenaar [Mon, 2 Jan 2017 13:27:34 +0000 (14:27 +0100)]
patch 8.0.0135
Problem: An address relative to the current line, ":.,+3y", does not work
properly on a closed fold. (Efraim Yawitz)
Solution: Correct for including the closed fold. (Christian Brabandt)
Bram Moolenaar [Fri, 9 Dec 2016 18:36:56 +0000 (19:36 +0100)]
patch 8.0.0127
Problem: Cancelling completion still inserts text when formatting is done
for 'textwidth'. (lacygoill)
Solution: Don't format when CTRL-E was typed. (Hirohito Higashi,
closes #1312)
Bram Moolenaar [Fri, 9 Dec 2016 18:28:48 +0000 (19:28 +0100)]
patch 8.0.0126
Problem: Display problem with 'foldcolumn' and a wide character.
(esiegerman)
Solution: Don't use "extra" but an allocated buffer. (Christian Brabandt,
closes #1310)