From 533e01a75b71e93686e7bc9c79fe0172ca876d91 Mon Sep 17 00:00:00 2001 From: Gregory Anders <8965202+gpanders@users.noreply.github.com> Date: Mon, 15 Apr 2024 11:06:54 -0500 Subject: fix(base64): properly handle embedded NULLs when decoding (#28349) --- src/nvim/lua/base64.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/nvim/lua/base64.c') diff --git a/src/nvim/lua/base64.c b/src/nvim/lua/base64.c index c1f43a37d7..8fe918493a 100644 --- a/src/nvim/lua/base64.c +++ b/src/nvim/lua/base64.c @@ -45,12 +45,13 @@ static int nlua_base64_decode(lua_State *L) size_t src_len = 0; const char *src = lua_tolstring(L, 1, &src_len); - const char *ret = base64_decode(src, src_len); + size_t out_len = 0; + const char *ret = base64_decode(src, src_len, &out_len); if (ret == NULL) { return luaL_error(L, "Invalid input"); } - lua_pushstring(L, ret); + lua_pushlstring(L, ret, out_len); xfree((void *)ret); return 1; -- cgit