From: Mike Pall Date: Mon, 19 Aug 2024 14:11:36 +0000 (+0200) Subject: Fix potential file descriptor leak in luaL_loadfile*(). X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=19db4e9b7c5e19398286adb4d953a4874cc39ae0;p=thirdparty%2FLuaJIT.git Fix potential file descriptor leak in luaL_loadfile*(). Reported by Assumeru. #1249 --- diff --git a/src/lj_load.c b/src/lj_load.c index dab037b4..d92bd1b4 100644 --- a/src/lj_load.c +++ b/src/lj_load.c @@ -88,12 +88,13 @@ LUALIB_API int luaL_loadfilex(lua_State *L, const char *filename, int status; const char *chunkname; if (filename) { + chunkname = lua_pushfstring(L, "@%s", filename); ctx.fp = fopen(filename, "rb"); if (ctx.fp == NULL) { + L->top--; lua_pushfstring(L, "cannot open %s: %s", filename, strerror(errno)); return LUA_ERRFILE; } - chunkname = lua_pushfstring(L, "@%s", filename); } else { ctx.fp = stdin; chunkname = "=stdin";