mirror of
https://github.com/neovim/neovim.git
synced 2024-12-19 18:55:14 -07:00
vim-patch:8.1.0803: session restore: handle single quotes #9620
Problem: Session file has problem with single quote in file name. (Jon
Crowe)
Solution: Use a double quoted string. Add a test.
ad36a3588d
Fixes https://github.com/neovim/neovim/issues/9618
This commit is contained in:
parent
9bfd304459
commit
023e832d40
@ -9391,9 +9391,9 @@ put_view(
|
||||
// Note, if a buffer for that file already exists, use :badd to
|
||||
// edit that buffer, to not lose folding information (:edit resets
|
||||
// folds in other buffers)
|
||||
if (fputs("if bufexists('", fd) < 0
|
||||
if (fputs("if bufexists(\"", fd) < 0
|
||||
|| ses_fname(fd, wp->w_buffer, flagp, false) == FAIL
|
||||
|| fputs("') | buffer ", fd) < 0
|
||||
|| fputs("\") | buffer ", fd) < 0
|
||||
|| ses_fname(fd, wp->w_buffer, flagp, false) == FAIL
|
||||
|| fputs(" | else | edit ", fd) < 0
|
||||
|| ses_fname(fd, wp->w_buffer, flagp, false) == FAIL
|
||||
|
@ -238,4 +238,18 @@ func Test_mkview_no_file_name()
|
||||
%bwipe
|
||||
endfunc
|
||||
|
||||
func Test_mksession_quote_in_filename()
|
||||
let v:errmsg = ''
|
||||
%bwipe!
|
||||
split another
|
||||
split x'y\"z
|
||||
mksession! Xtest_mks_quoted.out
|
||||
%bwipe!
|
||||
source Xtest_mks_quoted.out
|
||||
call assert_true(bufexists("x'y\"z"))
|
||||
|
||||
%bwipe!
|
||||
call delete('Xtest_mks_quoted.out')
|
||||
endfunc
|
||||
|
||||
" vim: shiftwidth=2 sts=2 expandtab
|
||||
|
Loading…
Reference in New Issue
Block a user