mirror of
https://github.com/neovim/neovim.git
synced 2025-11-24 11:10:38 +00:00
Remove VLA from path_get_absolute_path
Remove the use of Variable Length Arrays in path_get_absolute_path(), and use xmalloc/xfree instead.
This commit is contained in:
@@ -2083,7 +2083,7 @@ static int path_get_absolute_path(const char_u *fname, char_u *buf, int len, int
|
|||||||
char_u *p;
|
char_u *p;
|
||||||
*buf = NUL;
|
*buf = NUL;
|
||||||
|
|
||||||
char relative_directory[len];
|
char *relative_directory = xmalloc(len);
|
||||||
char *end_of_path = (char *) fname;
|
char *end_of_path = (char *) fname;
|
||||||
|
|
||||||
// expand it if forced or not an absolute path
|
// expand it if forced or not an absolute path
|
||||||
@@ -2105,9 +2105,11 @@ static int path_get_absolute_path(const char_u *fname, char_u *buf, int len, int
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (FAIL == path_full_dir_name(relative_directory, (char *) buf, len)) {
|
if (FAIL == path_full_dir_name(relative_directory, (char *) buf, len)) {
|
||||||
|
xfree(relative_directory);
|
||||||
return FAIL;
|
return FAIL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
xfree(relative_directory);
|
||||||
return append_path((char *)buf, end_of_path, len);
|
return append_path((char *)buf, end_of_path, len);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user