aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMike Pall <mike>2021-07-22 16:21:45 +0200
committerMike Pall <mike>2021-07-22 16:21:45 +0200
commitd87da3d5fed7f046c426d6a747bb84c2880f4e8d (patch)
treeae1bbf2470118fb3f66d313981cbe116a335a563 /src
parent8430f774e6478b587664ac4b7d4eb0b46678eff5 (diff)
downloadluajit-d87da3d5fed7f046c426d6a747bb84c2880f4e8d.tar.gz
luajit-d87da3d5fed7f046c426d6a747bb84c2880f4e8d.tar.bz2
luajit-d87da3d5fed7f046c426d6a747bb84c2880f4e8d.zip
Fix io.close() error message.
Reported by François Perrad.
Diffstat (limited to 'src')
-rw-r--r--src/lib_io.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/lib_io.c b/src/lib_io.c
index 76d3ace1..35c57d8b 100644
--- a/src/lib_io.c
+++ b/src/lib_io.c
@@ -293,8 +293,14 @@ static int io_file_lines(lua_State *L)
293 293
294LJLIB_CF(io_method_close) 294LJLIB_CF(io_method_close)
295{ 295{
296 IOFileUD *iof = L->base < L->top ? io_tofile(L) : 296 IOFileUD *iof;
297 io_stdfile(L, GCROOT_IO_OUTPUT); 297 if (L->base < L->top) {
298 iof = io_tofile(L);
299 } else {
300 iof = IOSTDF_IOF(L, GCROOT_IO_OUTPUT);
301 if (iof->fp == NULL)
302 lj_err_caller(L, LJ_ERR_IOCLFL);
303 }
298 return io_file_close(L, iof); 304 return io_file_close(L, iof);
299} 305}
300 306