1
0
forked from aniani/vim

patch 8.1.0470: pointer ownership around fname_expand() is unclear

Problem:    Pointer ownership around fname_expand() is unclear.
Solution:   Allow b_ffname and b_sfname to point to the same allocated memory,
            only free one.  Update comments.
This commit is contained in:
Bram Moolenaar
2018-10-11 19:27:47 +02:00
parent 108e7b422b
commit 3d6014f033
5 changed files with 55 additions and 28 deletions

View File

@@ -3648,8 +3648,8 @@ check_readonly(int *forceit, buf_T *buf)
}
/*
* Try to abandon current file and edit a new or existing file.
* "fnum" is the number of the file, if zero use ffname/sfname.
* Try to abandon the current file and edit a new or existing file.
* "fnum" is the number of the file, if zero use "ffname_arg"/"sfname_arg".
* "lnum" is the line number for the cursor in the new file (if non-zero).
*
* Return:
@@ -3661,12 +3661,14 @@ check_readonly(int *forceit, buf_T *buf)
int
getfile(
int fnum,
char_u *ffname,
char_u *sfname,
char_u *ffname_arg,
char_u *sfname_arg,
int setpm,
linenr_T lnum,
int forceit)
{
char_u *ffname = ffname_arg;
char_u *sfname = sfname_arg;
int other;
int retval;
char_u *free_me = NULL;