diff --git a/7.1.305 b/7.1.305 new file mode 100644 index 0000000..52d6b60 --- /dev/null +++ b/7.1.305 @@ -0,0 +1,155 @@ +To: vim-dev@vim.org +Subject: Patch 7.1.305 +Fcc: outbox +From: Bram Moolenaar +Mime-Version: 1.0 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 8bit +------------ + +Patch 7.1.305 +Problem: Editing a compressed file with special characters in the name + doesn't work properly. +Solution: Escape special characters. +Files: runtime/autoload/gzip.vim + + +*** ../vim-7.1.304/runtime/autoload/gzip.vim Thu May 10 18:54:26 2007 +--- runtime/autoload/gzip.vim Thu May 29 22:30:59 2008 +*************** +*** 1,6 **** + " Vim autoload file for editing compressed files. + " Maintainer: Bram Moolenaar +! " Last Change: 2007 May 10 + + " These functions are used by the gzip plugin. + +--- 1,6 ---- + " Vim autoload file for editing compressed files. + " Maintainer: Bram Moolenaar +! " Last Change: 2008 May 29 + + " These functions are used by the gzip plugin. + +*************** +*** 73,80 **** + let empty = line("'[") == 1 && line("']") == line("$") + let tmp = tempname() + let tmpe = tmp . "." . expand(":e") + " write the just read lines to a temp file "'[,']w tmp.gz" +! execute "silent '[,']w " . escape(tmpe, ' ') + " uncompress the temp file: call system("gzip -dn tmp.gz") + call system(a:cmd . " " . s:escape(tmpe)) + if !filereadable(tmp) +--- 73,87 ---- + let empty = line("'[") == 1 && line("']") == line("$") + let tmp = tempname() + let tmpe = tmp . "." . expand(":e") ++ if exists('*fnameescape') ++ let tmp_esc = fnameescape(tmp) ++ let tmpe_esc = fnameescape(tmpe) ++ else ++ let tmp_esc = escape(tmp, ' ') ++ let tmpe_esc = escape(tmpe, ' ') ++ endif + " write the just read lines to a temp file "'[,']w tmp.gz" +! execute "silent '[,']w " . tmpe_esc + " uncompress the temp file: call system("gzip -dn tmp.gz") + call system(a:cmd . " " . s:escape(tmpe)) + if !filereadable(tmp) +*************** +*** 95,106 **** + setlocal nobin + if exists(":lockmarks") + if empty +! execute "silent lockmarks " . l . "r ++edit " . tmp + else +! execute "silent lockmarks " . l . "r " . tmp + endif + else +! execute "silent " . l . "r " . tmp + endif + + " if buffer became empty, delete trailing blank line +--- 102,113 ---- + setlocal nobin + if exists(":lockmarks") + if empty +! execute "silent lockmarks " . l . "r ++edit " . tmp_esc + else +! execute "silent lockmarks " . l . "r " . tmp_esc + endif + else +! execute "silent " . l . "r " . tmp_esc + endif + + " if buffer became empty, delete trailing blank line +*************** +*** 110,117 **** + endif + " delete the temp file and the used buffers + call delete(tmp) +! silent! exe "bwipe " . tmp +! silent! exe "bwipe " . tmpe + endif + + " Restore saved option values. +--- 117,124 ---- + endif + " delete the temp file and the used buffers + call delete(tmp) +! silent! exe "bwipe " . tmp_esc +! silent! exe "bwipe " . tmpe_esc + endif + + " Restore saved option values. +*************** +*** 124,133 **** + + " When uncompressed the whole buffer, do autocommands + if ok && empty + if &verbose >= 8 +! execute "doau BufReadPost " . expand("%:r") + else +! execute "silent! doau BufReadPost " . expand("%:r") + endif + endif + endfun +--- 131,145 ---- + + " When uncompressed the whole buffer, do autocommands + if ok && empty ++ if exists('*fnameescape') ++ let fname = fnameescape(expand("%:r")) ++ else ++ let fname = escape(expand("%:r"), " \t\n*?[{`$\\%#'\"|!<") ++ endif + if &verbose >= 8 +! execute "doau BufReadPost " . fname + else +! execute "silent! doau BufReadPost " . fname + endif + endif + endfun +*** ../vim-7.1.304/src/version.c Thu May 29 21:46:10 2008 +--- src/version.c Thu May 29 22:33:11 2008 +*************** +*** 668,669 **** +--- 673,676 ---- + { /* Add new patch number below this line */ ++ /**/ ++ 305, + /**/ + +-- +OLD WOMAN: Well, how did you become king, then? +ARTHUR: The Lady of the Lake, her arm clad in the purest shimmering samite, + held Excalibur aloft from the bosom of the water to signify by Divine + Providence ... that I, Arthur, was to carry Excalibur ... That is + why I am your king! + "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD + + /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ +/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ +\\\ download, build and distribute -- http://www.A-A-P.org /// + \\\ help me help AIDS victims -- http://ICCF-Holland.org /// diff --git a/README.patches b/README.patches index 2d0db7a..d53aebf 100644 --- a/README.patches +++ b/README.patches @@ -24,8 +24,9 @@ Checksums for the patch files can be found in the file MD5. Collection of patches for Vim 7.1: SIZE NAME INCLUDES - 91424 7.1.001-100.gz patches 7.1.001 to 7.1.100, gzip'ed - 75402 7.1.101-200.gz patches 7.1.101 to 7.1.200, gzip'ed + 91424 7.1.001-100.gz patches 7.1.001 to 7.1.100, gzip'ed + 75402 7.1.101-200.gz patches 7.1.101 to 7.1.200, gzip'ed +109686 7.1.201-300.gz patches 7.1.201 to 7.1.300, gzip'ed Individual patches for Vim 7.1: @@ -330,3 +331,10 @@ Individual patches for Vim 7.1: 9374 7.1.296 SELinux is not supported 1855 7.1.297 wrong parenmatch highlighting after search/replace dialog 1558 7.1.298 src/gvimtutor is not distributed + 9490 7.1.299 filetype detection fails for file name with special characters + 1959 7.1.300 value of asmsyntax argument isn't checked for valid characters + 1673 7.1.301 "File/Save" menu in Insert mode doesn't update tab page label + 1485 7.1.302 (after 7.1.299) compilation error on MS-Windows + 1409 7.1.303 (after 7.1.302) compilation error on MS-Windows, again + 12135 7.1.304 shortpath_for_invalid_fname() is too complex and wrong + 4735 7.1.305 can't edit compressed file with special characters in the name diff --git a/vim.spec b/vim.spec index 1f1f333..c961825 100644 --- a/vim.spec +++ b/vim.spec @@ -18,7 +18,7 @@ #used for pre-releases: %define beta %{nil} %define vimdir vim71%{?beta} -%define patchlevel 298 +%define patchlevel 305 Summary: The VIM editor URL: http://www.vim.org/ @@ -354,6 +354,13 @@ Patch295: ftp://ftp.vim.org/pub/vim/patches/7.1/7.1.295 Patch296: ftp://ftp.vim.org/pub/vim/patches/7.1/7.1.296 Patch297: ftp://ftp.vim.org/pub/vim/patches/7.1/7.1.297 Patch298: ftp://ftp.vim.org/pub/vim/patches/7.1/7.1.298 +Patch299: ftp://ftp.vim.org/pub/vim/patches/7.1/7.1.299 +Patch300: ftp://ftp.vim.org/pub/vim/patches/7.1/7.1.300 +Patch301: ftp://ftp.vim.org/pub/vim/patches/7.1/7.1.301 +Patch302: ftp://ftp.vim.org/pub/vim/patches/7.1/7.1.302 +Patch303: ftp://ftp.vim.org/pub/vim/patches/7.1/7.1.303 +Patch304: ftp://ftp.vim.org/pub/vim/patches/7.1/7.1.304 +Patch305: ftp://ftp.vim.org/pub/vim/patches/7.1/7.1.305 Patch3000: vim-7.0-syntax.patch Patch3002: vim-7.1-nowarnings.patch @@ -789,6 +796,13 @@ perl -pi -e "s,bin/nawk,bin/awk,g" runtime/tools/mve.awk %patch296 -p0 %patch297 -p0 %patch298 -p0 +%patch299 -p0 +%patch300 -p0 +%patch301 -p0 +%patch302 -p0 +%patch303 -p0 +%patch304 -p0 +%patch305 -p0 # install spell files @@ -1207,6 +1221,9 @@ rm -rf $RPM_BUILD_ROOT %{_datadir}/icons/hicolor/*/apps/* %changelog +* Tue Jun 03 2008 Karsten Hopp 7.1.305-1 +- patchlevel 305 + * Thu May 15 2008 Karsten Hopp 7.1.298-1 - patchlevel 298