0
0
mirror of https://github.com/vim/vim.git synced 2025-07-25 10:54:51 -04:00

patch 8.1.0164: luaeval('vim.buffer().name') returns an error

Problem:    luaeval('vim.buffer().name') returns an error.
Solution:   Return an empty string. (Dominique Pelle, closes #3167)
This commit is contained in:
Bram Moolenaar 2018-07-07 23:07:41 +02:00
parent 2549acf794
commit fe08df452a
3 changed files with 8 additions and 7 deletions

View File

@ -1123,9 +1123,11 @@ luaV_buffer_index(lua_State *L)
{
const char *s = lua_tostring(L, 2);
if (strncmp(s, "name", 4) == 0)
lua_pushstring(L, (char *) b->b_sfname);
lua_pushstring(L, (b->b_sfname == NULL)
? "" : (char *) b->b_sfname);
else if (strncmp(s, "fname", 5) == 0)
lua_pushstring(L, (char *) b->b_ffname);
lua_pushstring(L, (b->b_ffname == NULL)
? "" : (char *) b->b_ffname);
else if (strncmp(s, "number", 6) == 0)
lua_pushinteger(L, b->b_fnum);
/* methods */

View File

@ -198,11 +198,8 @@ endfunc
" Test vim.buffer().name and vim.buffer().fname
func Test_buffer_name()
new
" FIXME: for an unnamed buffer, I would expect
" vim.buffer().name to give an empty string, but
" it returns 0. Is it a bug?
" so this assert_equal is commented out.
" call assert_equal('', luaeval('vim.buffer().name'))
call assert_equal('', luaeval('vim.buffer().name'))
call assert_equal('', luaeval('vim.buffer().fname'))
bwipe!
new Xfoo

View File

@ -789,6 +789,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
164,
/**/
163,
/**/