Blob Blame History Raw
Patches for Vim - Vi IMproved 7.4

The files in this directory contain source code changes to fix problems
in a released version of Vim.  Each file also contains an explanation of
the problem that is fixed, like the message that was sent to the vim-dev
maillist.

The best is to apply the patches in sequence.  This avoids problems when
a patch depends on a previous patch. 

Before patching, change to the top Vim directory, where the "src" and
"runtime" directories are located.
Depending on the version of "patch" that you use, you may have add an
argument to make it patch the right file:
        patch -p < 7.4.001
        patch -p0 < 7.4.001

After applying a patch, you need to compile Vim.  There are no patches
for binaries.

Checksums for the patch files can be found in the file MD5.


Individual patches for Vim 7.4:

  SIZE  NAME     FIXES
 13179  7.4.001  'ic' doesn't work for patterns such as [a-z]
  2522  7.4.002  pattern with two alternative look-behind matches doesn't match
  2680  7.4.003  memory access error in Ruby syntax highlighting
  7145  7.4.004  when closing a window fails ":bwipe" may hang
  1391  7.4.005  "vaB" while 'virtualedit' is set selects the wrong area
  1952  7.4.006  mkdir("foo/bar/", "p") gives an error message
  2538  7.4.007  creating a preview window on startup messes up the screen
  2176  7.4.008  new regexp engine can't be interrupted
  2051  7.4.009  too easy to write a file was not decrypted (yet)
  2307  7.4.010  (after 7.4.006) crash with invalid argument to mkdir()
  2270  7.4.011  cannot find out if "acl" and "xpm" features are supported
  6180  7.4.012  MS-Windows: resolving multi-bye shortcut does not work
  2986  7.4.013  MS-Windows: File name buffer too small for utf-8
  2671  7.4.014  MS-Windows: check for writing to device does not work
  3135  7.4.015  MS-Windows: Detecting node type fails for multi-byte chars
  5999  7.4.016  MS-Windows: File name completion has problem with Chinese
  2319  7.4.017  ":help !!" does not find the "!!" tag in the help file
  1400  7.4.018  when completing item becomes unselected
  1948  7.4.019  file name completion fails with Chinese characters
  2586  7.4.020  NFA engine matches too much with \@>
  2806  7.4.021  NFA regexp: Using \ze may result in wrong end
  4209  7.4.022  deadlock while exiting, because of allocating memory
  1704  7.4.023  MS-Windows: warning for 64 bit type
  1992  7.4.024  current user cannot always use the undo file he created
  2074  7.4.025  reading before start of a string
  1710  7.4.026  clang warning for int shift overflow
  2815  7.4.027  valgrind error when using CTRL-X CTRL-F at start of the line
 27323  7.4.028  equivalence classes are not working for multi-byte characters
  1837  7.4.029  an error in a pattern is reported twice
  2724  7.4.030  the -mno-cygwin argument is no longer supported by Cygwin
  1748  7.4.031  ":diffoff!" resets options even when 'diff' is not set
  2629  7.4.032  NFA engine does not match the NUL character
  3610  7.4.033  if terminal has 20 lines test 92 and 93 overwrite input file
  5336  7.4.034  using "p" in Visual block mode only changes the first line
  1696  7.4.035  MS-Windows: mouse pointer flickers when going to Normal mode
  7996  7.4.036  NFA engine does not capture group correctly when using \@>
  4274  7.4.037  "\ze" in a sub-pattern does set the end of the match
  3579  7.4.038  Using "zw" and "zg" when 'spell' is off give confusing error
  6108  7.4.039  MS-Windows: < MSCV10 can't handle symlinks to a directory
  2320  7.4.040  error on exit when variable holds reference to a script scope
  1695  7.4.041  Visual selection does not remain after being copied over
  2104  7.4.042  after ":setlocal" 'spell'/'spellang' :spelldump doesn't work
  2920  7.4.043  VMS can't handle long function names
  2134  7.4.044  can't build with old MSVC
  3167  7.4.045  substitute() has a problem with pattern starting with "\ze".
  2147  7.4.046  can't use Tcl 8.6
  1685  7.4.047  input() does not work in a function invoked by a mapping
  4441  7.4.048  recent clang version complains about -fno-strength-reduce
  2145  7.4.049  in Ex mode substitute prompt is wrong with line numbers
  2605  7.4.050  "gn" may select too much when there are two matching lines
  2068  7.4.051  syntax highlighting a Yaml file causes a crash
  5890  7.4.052  cursor may end up in the wrong position when auto-formatting
  1251  7.4.053  test75 has a wrong header
  1441  7.4.054  reading past end of the 'stl' string
  4758  7.4.055  Mac: Where macros are defined depends on the system
  1651  7.4.056  Mac: Compilation problem with OS X 10.9 Mavericks
  7773  7.4.057  byteidx() does not work for composing characters
  2094  7.4.058  warnings on 64 bit Windows
  1479  7.4.059  set_last_cursor() may encounter w_buffer being NULL
  3582  7.4.060  declaration has wrong return type for PyObject_SetAttrString()
  4688  7.4.061  (after 7.4.056) configure check in the wrong place
  2634  7.4.062  (after 7.4.061) wrong configure check for AvailabilityMacros.h
  3619  7.4.063  crash when using invalid key in Python dictionary
  5347  7.4.064  in Visual block mode replacing with CR does not break lines
  2117  7.4.065  the character typed at the hit-enter prompt is recorded twice
  9483  7.4.066  MS-Windows: swap file name wrong if colon in file name
  4139  7.4.067  CTRL-\ CTRL-O moves the cursor after inserting comment leader
  5093  7.4.068  cannot build Vim on Mac with non-Apple compilers
 73551  7.4.069  cannot right shift comment lines starting with #
  1387  7.4.070  (after 7.4.069) can't compile with tiny features
 38365  7.4.071  (after 7.4.069) passing limits around too often
  1748  7.4.072  crash when using Insert mode completion
 11426  7.4.073  setting undolevels for one buffer changes undo in another
  2054  7.4.074  when undo'ing all and making a change, undo structure is wrong
  9907  7.4.075  locally setting 'undolevels' is not tested
  1894  7.4.076  "cgn" does not wrap around the end of the file
  2216  7.4.077  DOS installer creates shortcut without a path
  3552  7.4.078  MSVC 2013 is not supported
 13657  7.4.079  a script cannot detect whether 'hlsearch' highlighting is on
  1873  7.4.080  (after 7.4.079) missing documentation for v:hlsearch
  1659  7.4.081  (after 7.4.078) wrong logic when ANALYZE is "yes"
 11034  7.4.082  using "gf" in a changed buffer suggests adding "!"
  4493  7.4.083  hard to avoid adding a used pattern to the search history
  5971  7.4.084  Python: interrupt not being properly discarded
  3581  7.4.085  can't move cursor when inserting text in Visual block mode
  4786  7.4.086  can't skip over expression when not evaluating for dict member
  1770  7.4.087  compiler warning on 64 bit Windows systems
 16587  7.4.088  Asian characters are always marked as spell errors
  1397  7.4.089  Vim doesn't set the security context on a renamed file
  7859  7.4.090  Win32: no completion if dir name contains an exclamation mark
  1926  7.4.091  (after 7.4.089) missing semicolon
  1697  7.4.092  (after 7.4.088) can't build small version
  2993  7.4.093  configure can't use LuaJIT on ubuntu 12.04
  4837  7.4.094  configure may not find that -lint is needed for gettext()
  3138  7.4.095  (after 7.4.093) regexp for LuaJIT version doesn't work on BSD
  2294  7.4.096  can't change directory to an UNC path
  1615  7.4.097  unexpected behavior change related to 'virtualedit'
  8357  7.4.098  error for line numbers out of range when using ":'<,'>del"
  3122  7.4.099  append in blockwise Visual mode with "$" is wrong
  3069  7.4.100  NFA regexp doesn't handle backreference correctly
  2899  7.4.101  using \1 in pattern goes one line too far
  2128  7.4.102  crash when interrupting "z="
  3846  7.4.103  dos installer escapes spaces in the diff command wrong
  2823  7.4.104  ":help s/\_" reports an internal error
  1792  7.4.105  completing a tag pattern may give an error for invalid pattern
  1971  7.4.106  can't build with Ruby using Cygwin
 21498  7.4.107  Python try/catch doesn't catch Vim error in vim.eval()
  5478  7.4.108  "zG" and "zW" leave temp files around on MS-Windows
  3775  7.4.109  ColorScheme autocommand matches with the current buffer name
  3703  7.4.110  "gUgn" cannot be repeeated
  1709  7.4.111  memory leak in Python OptionsAssItem
  1862  7.4.112  MS-Windows: defaults for 'dir' and 'bdir' do not include $TEMP
  2561  7.4.113  MSVC static analysis gives warnings
  3353  7.4.114  new GNU make directory change messages are different
  1633  7.4.115  Zsh: expanding ~abc fails when the result contains a space
  1381  7.4.116  'showcmd' does not show a typed space
  8049  7.4.117  can't build with Cygwin/MingW and Perl 5.18
  2394  7.4.118  redrawing status lines may causes recursive call
  7060  7.4.119  Vim doesn't work well on OpenVMS
  1702  7.4.120  (after 7.4.117) can't build with Perl 5.18 on Linux
  1426  7.4.121  completion doesn't work for ":py3d" and ":py3f"
  6071  7.4.122  Win32: :grep doesn't work when 'encoding' and ACP differ
  1883  7.4.123  Win32: Getting user name does not use wide function
  1730  7.4.124  Win32: Getting host name does not use wide function
  1568  7.4.125  Win32: Dealing with messages may not work for multi-byte chars
  1946  7.4.126  compiler warnings for "const" and incompatible types
  1949  7.4.127  Perl 5.18 on Unix doesn't work
  1948  7.4.128  Perl 5.18 for MSVC doesn't work
  1499  7.4.129  getline(-1) returns zero
  2064  7.4.130  relative line numbers mix up windows when using folds
  3038  7.4.131  syncbind causes E315 errors in some situations
  1559  7.4.132  (after 7.4.122) Win32: flags/inherit_handles args mixed up
  2043  7.4.133  Clang warns for using NUL
  1562  7.4.134  spurious space in MingW Makefile
  1696  7.4.135  missing dot in MingW test Makefile
  2314  7.4.136  (after 7.4.096) Windows: readonly when saving UNC path file
  6184  7.4.137  cannot use IME with Windows 8 console
  3391  7.4.138  (after 7.4.114) directory change messages are not recognized
  2254  7.4.139  crash when using :cd in autocommand
  5016  7.4.140  crash when autocommand wipes out only other buffer
  2430  7.4.141  problems when building with Borland
  4651  7.4.142  (after 7.4.137) on MS-Windows 8 IME input doen't work well
  6310  7.4.143  TextChangedI is not triggered.
  1480  7.4.144  MingW also supports intptr_t for OPEN_OH_ARGTYPE
  2513  7.4.145  getregtype() does not return zero for unknown register
  2324  7.4.146  when starting Vim with "-u NONE" v:oldfiles is NULL
  2583  7.4.147  cursor position wrong when using "gj" after "$"
  2554  7.4.148  cannot build with Cygwin and X1.
 24083  7.4.149  get E685 error when assigning a function to autoload variable
  2596  7.4.150  :keeppatterns is not respected for :s
 37572  7.4.151  Python: slices with steps are not supported
 19610  7.4.152  Python: Cannot iterate over options
  6150  7.4.153  compiler warning for pointer type
  5202  7.4.154  (after 7.4.149) still a problem with auto-loading
  2233  7.4.155  (after 7.4.150) search offset not kept with :keeppatterns
  1466  7.4.156  test file missing from distribution
  1643  7.4.157  error number used twice
  4006  7.4.158  pattern containing \zs not handled correctly by substitute()
  3819  7.4.159  completion hangs when using the current buffer after keywords
  2026  7.4.160  Win32: Crash when executing external command
  2296  7.4.161  crash in Python exception handling
  1395  7.4.162  running tests in shadow dir doesn't work
  2083  7.4.163  (after 7.4.142) MS-Windows 7 input doesn't work properly
  2050  7.4.164  problem with event handling on Windows 8
  2313  7.4.165  by default, after closing a buffer changes can't be undone
  1685  7.4.166  auto-loading a function for code that won't be executed
  7150  7.4.167  (after 7.4.149) fixes are not tested
  2549  7.4.168  can't compile with Ruby 2.1.0
  1656  7.4.169  ":sleep" puts cursor in the wrong column
  3474  7.4.170  some help tags don't work with ":help"
 21030  7.4.171  redo does not set v:count and v:count1
  9545  7.4.172  blowfish code says OFB, but it's doing CFB
  2110  7.4.173  when using scrollbind the cursor can end up below last line
  2945  7.4.174  compiler warnings for Python interface
  5133  7.4.175  wrong fall-back to non-wide function if wide function fails
  2606  7.4.176  Python: Dictionary.update() thows an unexpected error
  1491  7.4.177  compiler warning for unused variable
  1957  7.4.178  the J command does not update '[ and '] marks
  1675  7.4.179  Compiler warning for type-punned pointer
  2650  7.4.180  (after 7.4.174) older Python versions don't support %ld
  1947  7.4.181  when using 'pastetoggle' the status lines are not updated
  1916  7.4.182  building with mzscheme and racket does not work
  1493  7.4.183  MSVC Visual Studio update not supported
  5677  7.4.184  match() does not work properly with a {count} argument
  1837  7.4.185  Clang gives warnings
  5437  7.4.186  (after 7.4.085) Visual mode insert mode is sometimes wrong
  3991  7.4.187  delete that crosses line break splits multi-byte character
 19236  7.4.188  SIZEOF_LONG clashes with similar defines in header files
  1429  7.4.189  compiler warning for unused argument
  2139  7.4.190  compiler warning for using %lld for off_t
 27520  7.4.191  can't escape a file name for shell commands without a function
  1329  7.4.192  memory leak when giving E853
  3561  7.4.193  typos in messages
  1829  7.4.194  can't build for Android
  7729  7.4.195  (after 7.4.193) Python tests fail
  1651  7.4.196  tests fail on Solaris 9 and 10
 34900  7.4.197  various problems on VMS
  3101  7.4.198  can't build with non-threding Perl and dynamic loading
  2946  7.4.199  (issue 197) ]P doesn't paste over Visual selection
  1817  7.4.200  too many #ifdefs in the code
  7626  7.4.201  'lispwords' is a global option
  7151  7.4.202  MS-Windows: non-ASCII font names don't work
  7124  7.4.203  parsing 'errorformat' is not correct
  3446  7.4.204  a mapping where the second byte is 0x80 doesn't work
  2953  7.4.205  ":mksession" does not handle the argument list correctly
  2217  7.4.206  compiler warnings on 64 bit Windows
  4843  7.4.207  cursor report sometimes not recognized causing replace mode
  1390  7.4.208  Mercurial picks up some files that are not distributed
  1924  7.4.209  when repeating a filter command "%" and "#" are expanded
  3997  7.4.210  Visual block mode + virtual edit doesn't work well with tabs
  2404  7.4.211  ":lu" is abbreviation for ":lua", but it should be ":lunmap"
137444  7.4.212  #ifdefs for the +visual feature are not useful
  6508  7.4.213  it's not possible to open a new buffer without a swapfile
  1523  7.4.214  compilation problems on HP_nonStop (Tandem)
  3488  7.4.215  ":sp foo" reloads "foo" if it is the current buffer
  1922  7.4.216  compiler warnings
  3225  7.4.217  "make clean" may run configure pointlessly
 19321  7.4.218  it's not easy to remove duplicates from a list
  2890  7.4.219  redraw too often when 'relativenumber' or 'cursorline' set
  4640  7.4.220  test 105 does not work in a shadow dir
  1755  7.4.221  quickfix doesn't resize on ":copen 20"
  3882  7.4.222  the Ruby directory is constructed from parts
220004  7.4.223  still using an older autoconf version
  7317  7.4.224  /usr/bin/grep on Solaris does not support -F
  2702  7.4.225  dynamic Ruby doesn't work on Solaris
  3535  7.4.226  (after 7.4.219) cursorline highlight not always redrawn
  2832  7.4.227  (after 7.4.225) can't build with Ruby 1.8
  6200  7.4.228  compiler warnings when building with Python 3.2
  3782  7.4.229  ":let" fails when listing vars with a curly braces expression
  1673  7.4.230  error when using ":options"
  9286  7.4.231  an error in ":options" is not caught by the tests
  3599  7.4.232  ":%s/\n//" uses a lot of memory
  2222  7.4.233  escaping special chars in ":!cmd %" is inconsistant
  3017  7.4.234  can't get the command that was used to start Vim
 16436  7.4.235  it is not easy to get the full path of a command
  5191  7.4.236  it's not that easy to check the Vim patch version
  4893  7.4.237  (after 7.4.236) has() not checking for specific patch
 14829  7.4.238  Vim does not support the smack library
  1714  7.4.239  ":e +" does not position cursor at end of the file
  1676  7.4.240  ":tjump" shows "\n" as "\\n"
 12078  7.4.241  submatch() does not distinguish between a NL and a NUL
 15570  7.4.242  getreg() does not distinguish between a NL and a NUL character
 32738  7.4.243  cannot use setreg() to add text that includes a NUL
  1807  7.4.244  (after 7.4.238) the smack feature causes stray error messages
  1874  7.4.245  crash for "vim -u NONE -N  -c '&&'"
  3736  7.4.246  configure message for detecting smack are out of sequence
  5838  7.4.247  NUL and NL mixed up when giving input to system()
 13519  7.4.248  cannot distinguish between NL and NUL in output of system()
  6037  7.4.249  using setreg() with a list of numbers does not work
  1641  7.4.250  some test files missing from distribution
  4570  7.4.251  crash when BufAdd autocommand wipes out the buffer
  1446  7.4.252  critical error in GTK, removing timer twice
  2643  7.4.253  crash when using external reference in syntax regexp