Blob Blame History Raw
Patches for Vim - Vi IMproved 7.3

The files in this directory contain source code changes to fix
problems in released versions 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.  If you did not unpack the
extra archive, you may want to skip patches marked with "(extra)".
Similarly for the "lang" archive.  Or ignore errors for missing files.

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.3.001
        patch -p0 < 7.3.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.

These patches were edited after their original submission to avoid patch to
fail.  The original files are available with "orig." prepended:
 22565  7.3.202  cannot influence the indent inside a namespace
  5725  7.3.203  MS-Windows: Can't run external command without console window
 10891  7.3.223  MingW cross compilation doesn't work with tiny feat.


Individual patches for Vim 7.3:

  SIZE  NAME     FIXES
  1720  7.3.001  ":find" completion does not always shorten match properly
  1610  7.3.002  ":find" completion didn't work halfway an environment variable
  1299  7.3.003  crash with specific BufWritePost autocmd
  1300  7.3.004  crash when using very long regexp
  2747  7.3.005  crash when using undotree()
  2987  7.3.006  can't build some multi-byte code with C89
  4442  7.3.007  Python code redefines "buffer", re-implements a grow-array
 11982  7.3.008  'cursorbind' is kept in places where 'scrollbind' is reset
  3197  7.3.009  Win32: Crash when using a bad argument for strftime()
  5466  7.3.010  Mac GUI: Missing break statements
  8811  7.3.011  X11 clipboard doesn't work in GUI, after :sh selection fails
  2127  7.3.012  problems building with MingW
  5979  7.3.013  dynamic loading with Ruby doesn't work for 1.9.2
  2497  7.3.014  "a" in Ex mode with backslash at end of line doesn't work
  2223  7.3.015  a test is using an error message that no longer exists
  7448  7.3.016  netbeans interface doesn't work under Athena
  4314  7.3.017  errors reported by smatch
  2488  7.3.018  (after 7.3.012) missing argument to windres in MingW makefiles
  1577  7.3.019  ":nbstart" can fail silently
  3696  7.3.020  cursor position wrong when joining lines and 'fo' contains "a"
  2145  7.3.021  Mac: Boolean redefined when building with X11
  1750  7.3.022  when opening a new window 'spellcapcheck' is cleared
  2086  7.3.023  external program may hang when it tries to write to the tty
  3222  7.3.024  named signs do not use a negative number as intended
  3412  7.3.025  ":mksession" does not escape file name properly
  1848  7.3.026  CTRL-] in a help file doesn't always work
  2668  7.3.027  MS-Windows: Opening a file on a network share is very slow
  5065  7.3.028  (after 7.3.024) signs don't show up
  4623  7.3.029  ":sort n" sorts lines without a number as number zero
 12512  7.3.030  cannot store Dict and List in viminfo file
  3620  7.3.031  can't pass the X window ID to another application
 21839  7.3.032  maparg() doesn't return the flags, e.g., <buffer>, <script>
  1395  7.3.033  (after 7.3.032) can't build without FEAT_LOCALMAP
 12987  7.3.034  Win32: may load .dll from wrong directory
  1882  7.3.035  (after 7.3.034) stray semicolon
  1946  7.3.036  Win32 GUI: different dialog font when building without menus
  4147  7.3.037  compiler warnings for loss of data
  2638  7.3.038  v:windowid isn't set for MS-Windows
  2567  7.3.039  crash when using skk.vim plugin
  1627  7.3.040  go past end of string when comparing while ignoring case
  1857  7.3.041  compiler warning for mediumVersion
  1915  7.3.042  no spell highlighting when re-using an empty buffer
 14836  7.3.043  can't load Ruby dynamically on Unix
  1857  7.3.044  preview window too high when opened by the popup menu
  1739  7.3.045  compiler warning for uninitialized variable
  2126  7.3.046  can't build Ruby on MS-Windows
  6058  7.3.047  (after 7.3.032) missing makefile updates for test 75
  3410  7.3.048  ":earlier 1f" doesn't work after loading undo file
 19335  7.3.049  PLT has rebranded their Scheme to Racket
  6138  7.3.050  the link script is clumsy, should use --as-needed
  3305  7.3.051  crash when $PATH is empty
 10719  7.3.052  various errors when 'completefunc' opens a new window
  2948  7.3.053  complete() function doesn't reset complete direction
  3354  7.3.054  can define a user command for :Print, but it doesn't work
 10470  7.3.055  endless loop when recursively comparing lists and dicts
 17935  7.3.056  "getline" argument in do_cmdline() shadows global
  1980  7.3.057  segfault with command line abbreviation
  4735  7.3.058  error "code converter not found" when loading Ruby script
  3226  7.3.059  Netbeans: Problem with recursive messages for Athena/Motif
  5326  7.3.060  Netbeans: crash when socket is disconnected unexpectedly
  3307  7.3.061  remote ":drop" does not respect 'autochdir'
 23639  7.3.062  Python has problems when installed in an unusual directory
  2250  7.3.063  Win32: Running a filter command makes Vim lose focus
  2493  7.3.064  Win32: ":dis +" shows nothing, but "+p does insert text
  3389  7.3.065  can't get current line number in a source file
  2852  7.3.066  crash when changing to another window during :vimgrep command
  2315  7.3.067  Ruby: Init_prelude is not always available
  1550  7.3.068  using freed memory on ":saveas" if autocommand sets 'acd'
  1618  7.3.069  GTK: pressing Enter in inputdialog() doesn't work like OK
  1604  7.3.070  can set environment variables in the sandbox
  2095  7.3.071  cursor binding not reset when editing another file
  9432  7.3.072  can't complete file names while ignoring case
  2466  7.3.073  double free memory when netbeans command follows DETACH
  7659  7.3.074  can't use the "+ register like "* for yank and put
  3872  7.3.075  (after 7.3.072) also use 'wildignorecase' in expand()
  5538  7.3.076  Clang warnings for dead code
  3099  7.3.077  when updating swapfile crypt fails there is no error message
  1565  7.3.078  warning for unused variable
  1377  7.3.079  duplicate lines in MSVC makefile
  6011  7.3.080  spelling doesn't work on VMS
  2257  7.3.081  non-printable characters in 'statusline' cause trouble
  1634  7.3.082  leaking file descriptor when netbeans hostname doesn't exist
  9996  7.3.083  when a read() or write() is interrupted by a signal it fails
  3508  7.3.084  after window split the new one scrolls with cursor at top
  8843  7.3.085  (after 7.3.083) inconsistency with preproc symbols
  4005  7.3.086  v:count has value of previous command in expression mapping
  4349  7.3.087  (after 7.3.083) missing include for errno.h
  4868  7.3.088  Ruby can't load Gems sometimes, may cause a crash
  1550  7.3.089  compiler warning on 64 bit MS-Windows
  2377  7.3.090  wrong help text for Cscope
  9421  7.3.091  "vim -w foo" writes key codes for removed escape sequences
  1678  7.3.092  resizing the window when exiting
  5483  7.3.093  new DLL dependencies in MingW with gcc 4.5.0
  2167  7.3.094  using abs() requires type cast to int
  1999  7.3.095  Win32: In Chinese tear-off menu doesn't work
  2767  7.3.096  can't interrupt "gvim -nb", leak file descriptor on errro
  1760  7.3.097  ":call" inside "if 0" gives error for dict function
  1712  7.3.098  ignored error may still cause status line to be disabled
  1628  7.3.099  crash when splitting a window with zero height
  1497  7.3.100  when using ":normal" v:count isn't set
  2449  7.3.101  ino_t defined with wrong size in Ruby and Lua interfaces
 23045  7.3.102  Ex command typed at reload prompt is ignored
  4500  7.3.103  changing 'ff', then using ":w" in empty file sets 'mod'
  1428  7.3.104  conceal: using Tab for cchar causes problems
  1539  7.3.105  can't get the value of "b:changedtick" with getbufvar()
  1650  7.3.106  other window scrolls if both 'scrollbind' and 'cursorbind' set
  1986  7.3.107  year in :undolist can be confusing
  3425  7.3.108  useless check for NULL when calling vim_free()
  7203  7.3.109  processing new Esperanto spell file fails and crashes Vim
  2122  7.3.110  the "nbsp" item in 'listchars' isn't used for ":list"
  4010  7.3.111  :normal command in 'statusline' causes the cursor to move
  1978  7.3.112  setting 'statusline' to "%!'asdf%' reads uninitialized memory
  1838  7.3.113  Windows: Fall back directory for creating temp file is wrong
  1568  7.3.114  potential problem using 'verbosefile' uninitialized
  1645  7.3.115  Vim can crash when tmpnam() returns NULL
  1788  7.3.116  'cursorline' too short with concealed chars and 'list' set
  3835  7.3.117  build failed when --as-needed excludes ncurses
  2283  7.3.118  Ruby uses SIGVTALARM which makes Vim exit
  1637  7.3.119  (after 7.3.114) build problem on Mac
  2597  7.3.120  message for existing swap file does not fit in 25 lines
  1721  7.3.121  crash when using complicated 'statusline'
  3936  7.3.122  having src/auto/config.mk in the distribution causes problems
  1954  7.3.123  ml_get error when 'conceallevel' is set
  6777  7.3.124  EOL may be missing from written file
  2672  7.3.125  MSVC: quote in link argument causes trouble
  1652  7.3.126  compiler warning for signed pointer
  1747  7.3.127  compiler complains about comma after last enum item
  1706  7.3.128  another compiler warning for signed pointer
  6608  7.3.129  using integer like a boolean
  1908  7.3.130  clipboard_event_time misplaced in #ifdef
  1280  7.3.131  including errno.h too often
  2648  7.3.132  C++ style comments
  3169  7.3.133  when using encryption it's not clear what method was used
  1470  7.3.134  drag-n-drop doesn't work in KDE Dolphin
  2678  7.3.135  inconsistency: last substitute pattern isn't used for search
  1653  7.3.136  duplicate include of assert.h
  2881  7.3.137  when 'lazyredraw' is set the screen may not be updated
  2399  7.3.138  ":com" changes the multi-byte text of :echo
  3685  7.3.139  (after 7.3.137) can't read ":ver" output when 'lazyredraw' set
  1797  7.3.140  crash when 'cursorline' and 'list' both set
  2968  7.3.141  when a key code is not set get a confusing error message
  2593  7.3.142  Python stdout doesn't have flush(), causing an import to fail
 45956  7.3.143  memfile insufficiently tested; inefficient with many blocks
  2387  7.3.144  crash with ":python help(dir)"
  2400  7.3.145  (after 7.3.144) can't build with Python dynamically loading
  6571  7.3.146  can assign to dict member with invalid name
  1575  7.3.147  (after 7.3.143) can't build on HP-UX
  7615  7.3.148  huge number of syntax items or clusters causes hang or crash
  2205  7.3.149  the cursor disappears after the 'setDot' netbeans command
  2960  7.3.150  readline() does not return the last line when NL is missing
  2077  7.3.151  with "unnamedplus" in 'clipboard' selection also copied to "*
 14784  7.3.152  xxd does not check for errors of library functions
  1775  7.3.153  compiler warning for ambiguous else, missing prototype in xxd
  3570  7.3.154  (after 7.3.148) can't compile with tiny features
  8459  7.3.155  crash when using map(), filter(), remove(), extend() on v:
  2727  7.3.156  Tty names possibly left unterminated
  1583  7.3.157  superfluous assignment
  1497  7.3.158  might use uninitialized memory in C indenting
  1587  7.3.159  using uninitialized pointer when out of memory
 13647  7.3.160  unsafe string copying
 43528  7.3.161  items on the stack may be too big
  2564  7.3.162  no error message assigning to a list with index out of range
  2016  7.3.163  the default 'shellpipe' doesn't recognize "mksh" and "pdksh"
  4014  7.3.164  C-indenting doesn't recognize some function declarations
  1558  7.3.165  ":find" completion does not escape spaces in directory name
  1765  7.3.166  buffer on the stack may be too big
  2932  7.3.167  when using internal grep QuickFixCmdPost is not triggered
  2019  7.3.168  CR in second argument of input() causes problems
  3659  7.3.169  freeing memory already freed, warning from code analyzer
  2429  7.3.170  VMS: test77 missing from Makefile
  4511  7.3.171  confusing message from ":yank" when no clipboard support
  8382  7.3.172  MS-Windows: rename() might delete a file
  2429  7.3.173  ":cwindow" may open a window when the quickfix list is empty
  4618  7.3.174  when Exuberant ctags binary is exctags it's not found
  1482  7.3.175  ":new" may result in wrong 'colorcolumn' highlighting
  6968  7.3.176  Ruby linking doesn't work properly on Mac OS X
  2814  7.3.177  MS-Windows: mkdir() works wrong when 'encoding' is "utf-8"
  4019  7.3.178  C-indent doesn't handle code right after { correctly
  2144  7.3.179  C-indent doesn't handle colon in string correctly
  8439  7.3.180  better matching end part of 'comments' not used after middle
  4509  7.3.181  display update error when repeating insert of CTRL-V / digraph
  1684  7.3.182  (after 7.3.180) unused variable compiler warning
  3761  7.3.183  when Exuberant ctags binary is exuberant-ctags it's not found
  2532  7.3.184  static code analysis errors in riscOS
  2570  7.3.185  ":windo g/pattern/q" reports wrong number of lines
  1713  7.3.186  v:register wrong when 'clipboard' contains "unnamed"
173872  7.3.187  the RISC OS port is not being maintained, remove it
  7901  7.3.188  some more RISC OS files to be removed
  1476  7.3.189  (after 7.3.186) build fails without +clipboard
  1462  7.3.190  "containedin" syntax argument may make highlighting be wrong
 13294  7.3.191  still some RISC OS stuff to remove
  1701  7.3.192  command ":s/ \?/ /g" splits multi-byte characters into bytes
  1998  7.3.193  in the command line window ":close" doesn't work properly
  1397  7.3.194  "!mkdir a | ln -s a b", resolve("b/") doesn't result in "a/"
  4951  7.3.195  "} else" causes following lines to be indented too much
  7478  7.3.196  can't intercept a character that is going to be inserted
  2367  7.3.197  get E42 error when a QuickfixCmdPost event removes all errors
 12240  7.3.198  there is no completion for ":lang"
  1857  7.3.199  MS-Windows: Compilation problem of OLE with MingW compiler
  2213  7.3.200  (after 7.3.198) CTRL-D doesn't complete :lang
  3303  7.3.201  (after 7.3.195) still bad indenting after "} else"
 21467  7.3.202  (fixed) cannot influence the indent inside a namespace
  3199  7.3.203  (fixed) MS-Windows: Can't run ext. cmd without console window
  1588  7.3.204  (after 7.3.201) compiler warning
  2430  7.3.205  syntax "extend" doesn't work correctly
  1617  7.3.206  64bit MS-Windows compiler warning
  1603  7.3.207  can't compile with MSVC with pentium4 and 64 bit
  1597  7.3.208  early terminated if statement in Mac code
  2886  7.3.209  MSVC Install instructions point to wrong batch file
  5906  7.3.210  can't always find the file when using cscope
  1730  7.3.211  (after 7.3.210) compiler warning
 11261  7.3.212  with Python 3.2 ":py3" fails
  2985  7.3.213  javascript object literal is not indented correctly
  1615  7.3.214  the text displayed by ":z-" isn't exactly like old Vi
  2079  7.3.215  (after 7.3.210) wrong file names in previous patch
  9055  7.3.216  when recovering a file a range of lines is missing
  1916  7.3.217  inside an "if" a ":wincmd" causes problems
  4735  7.3.218  (after 7.3.212) tiny configuration problem with Python 3
  3087  7.3.219  can't compile with GTK on Mac
 37536  7.3.220  various Python 3 problems
  8061  7.3.221  text from clipboard is not consistently handled as linewise
  2214  7.3.222  warning for building GvimExt
 10890  7.3.223  (fixed) MingW cross compilation doesn't work with tiny feat.
  5522  7.3.224  can't pass dict to sort function
 18841  7.3.225  "\n" in a substitute() inside ":s" not handled correctly
  1838  7.3.226  on a 64 bit system "syn sync fromstart" is very slow
  3430  7.3.227  after 7.3.221) Mac OS doesn't have the linewise clipboard fix
  1390  7.3.228  "2gj" does not always move to the correct position
  1645  7.3.229  fork() makes Mac gvim crash when build with CoreFoundation
  2295  7.3.230  ":wundo" and ":rundo" don't unescape their argument
  5151  7.3.231  runtime file patches failed for 7.3.202 and 7.3.203
  2324  7.3.232  Python doesn't compile without +multi_byte
  2476  7.3.233  ":scriptnames" and ":breaklist" show long file names
  5209  7.3.234  with GTK menu may be popping down
 11651  7.3.235  ";" gets stuck on a "t" command, it's not useful
  2994  7.3.236  (after 7.3.232) Python 3 doesn't compile without +multi_byte
  7267  7.3.237  filetype completion doesn't work on Windows
  1599  7.3.238  compiler warning for conversion
  8837  7.3.239  Python corrects cursor column without using 'virtualedit'
 22002  7.3.240  external commands can't use pipes on MS-Windows
  2115  7.3.241  CTRL-R CTRL-W on command line may insert only part of word
  2070  7.3.242  illegal memory access in after_pathsep()
  1652  7.3.243  illegal memory access in readline()
  1537  7.3.244  MS-Windows: Build problem with old compiler
  4115  7.3.245  Python 3.2 libraries not correctly detected
  1927  7.3.246  Repeating "f4" in "4444" skips one 4
  2825  7.3.247  tests change users viminfo file; no test for patch 7.3.246
  4825  7.3.248  PC Install instructions missing install instructions
  3283  7.3.249  wrong indenting for array initializer
  3509  7.3.250  Python: Errors in Unicode characters not handled nicely
  5229  7.3.251  "gH<Del>" deletes current line, except when it's the last line
  1220  7.3.252  (after 7.3.247) tests fail
 16588  7.3.253  "echo 'abc' > ''" returns 0 or 1, depending on 'ignorecase'
  1369  7.3.254  coladd not reset for ":call" command
  2839  7.3.255  Windows: error when editing a file with invalid wildcard
  5982  7.3.256  Javascript indenting not sufficiently tested
  3310  7.3.257  not all completions are available to user commands
  2128  7.3.258  MS-Windows: can't disable edit with existing vim menu entries
 21799  7.3.259  equivalence classes only work for latin characters
  2138  7.3.260  CursorHold triggers on an incomplete mapping
  2969  7.3.261  G++ error message errornously recognized as error
 30045  7.3.262  Photon code style doesn't match Vim style
  4291  7.3.263  Perl and Tcl have a few code style problems
  5190  7.3.264  tags file not find when current dir name contains wildcards
  4017  7.3.265  storing search pattern in history without separator check
  1677  7.3.266  in Gvim with iBus typing space in Insert mode doesn't work
  1784  7.3.267  Ruby on Mac OS X 10.7 may crash
  2871  7.3.269  'shellcmdflag' only works with one flag
  1514  7.3.270  illegal memory access
 12980  7.3.271  code not following Vim coding style
  1545  7.3.272  ":put =list" does not add empty line for trailing empty item
  3544  7.3.273  a BOM in an error file is seen as text
  1791  7.3.274  with concealed characters tabs do not have the right size
  2872  7.3.275  MS-Windows: screen flicker when using a black background
  4279  7.3.276  GvimExt sets $LANG in the wrong way
  9130  7.3.277  MS-Windows: some characters do not show in dialogs
  2098  7.3.278  passing the file name to open in VisVim doesn't work
  3769  7.3.279  GTK: opening new tab may cause gvim window to be too big
  5024  7.3.280  ":lmake" does not update the quickfix window title
  3803  7.3.281  after expand('%:8') the current buffer name is changed
  1915  7.3.282  text displayed incorrect when using input() + :echo in a loop
  3387  7.3.283  multi-byte text in an expression mapping gets messed up
  5785  7.3.284  str2special() doesn't handle multi-byte chars properly
  3983  7.3.285  (after 7.3.284) mapping <char-123> does not work
  2682  7.3.286  crash when using "zd" on a large number of folds
  2829  7.3.287  can't compile with MSVC and tiny options
  2545  7.3.288  has('python') may give an error message
  1763  7.3.289  complete function isn't called when the leader changed
  2494  7.3.290  if BufWriteCmd autocmd resets 'modified' undo state is wrong
  4345  7.3.291  configure doesn't work properly with Python3
  1940  7.3.292  crash with fold markers and visual block that goes to EOL
  2390  7.3.293  MSVC compiler has a problem with non-ASCII characters
  1978  7.3.294  (after 7.3.289) patch 289 causes more problems than it solves
  3455  7.3.295  when filtering text Vim may not read all the output
  5673  7.3.296  zombie process may remain when writing to external command
  5101  7.3.297  can't load Perl 5.14 dynamically
  6312  7.3.298  built-in colors are different from rgb.txt
 12218  7.3.299  source code not in Vim style
  2281  7.3.300  Python doesn't parse multi-byte argument correctly
  2901  7.3.301  Tab inserted when 'expandtab' and 'copyindent' are set
  2107  7.3.302  (after 7.3.301) test 19 fails without 'smartindent' and +eval
  1726  7.3.303  (after 7.3.296) compilation error
  3125  7.3.304  strawberry Perl doesn't work on MS-Windows
  1763  7.3.305  display scrolls up when auto-loading a function
  6330  7.3.306  unexpected GUI resize may cause a crash
  5383  7.3.307  Python 3 does not support slice assignment
  6788  7.3.308  writing to 'verbosefile' has problems, e.g. for :highlight
  3536  7.3.309  (after 7.3.307) warnings for pointer types
 92586  7.3.310  source code not in Vim style
 11313  7.3.311  complete function isn't called when the leader changed
  1815  7.3.312  (after 7.3.306) can't compile with tiny features
  2141  7.3.313  (after 7.3.307) warning compiling with dynamic Python 3
  1740  7.3.314  (after 7.3.304) missing parenthesis
 13684  7.3.315  opening a window before forking causes problems for GTK
  1499  7.3.316  (after 7.3.306) crash if 'colorcolumn' set and closing buffer
  3918  7.3.317  Lua: debug.debug() may hang
  2662  7.3.318  "C" on the last line deletes that line if it's blank
  4573  7.3.319  redobuff doesn't always include completion leader changes
  3363  7.3.320  0xa0 character in sourced file is hard to spot
  7855  7.3.321  code not following Vim style
  1585  7.3.322  #ifdef for PDP_RETVAL doesn't work, INT_PTR can be a typedef