diff options
author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2019-07-31 11:41:59 -0300 |
---|---|---|
committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2019-07-31 11:41:59 -0300 |
commit | 223bb04090344b1972dc2a7910a54b46210f0d40 (patch) | |
tree | 4346fc4bfb9b32a6502a61f97f01f225ee4f7830 /liolib.c | |
parent | fe040633a1d64af4c19acc4707adb47413a3cd4a (diff) | |
download | lua-223bb04090344b1972dc2a7910a54b46210f0d40.tar.gz lua-223bb04090344b1972dc2a7910a54b46210f0d40.tar.bz2 lua-223bb04090344b1972dc2a7910a54b46210f0d40.zip |
Correction in the documentation of 'io.lines'
The loop does not end on end of file, but when the iterator function
fails to read a value. (In particular, the format "a" never fails,
so a loop with 'io.lines(fname, "a")' never ends.)
Diffstat (limited to 'liolib.c')
-rw-r--r-- | liolib.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -624,7 +624,7 @@ static int io_readline (lua_State *L) { | |||
624 | lua_pushvalue(L, lua_upvalueindex(3 + i)); | 624 | lua_pushvalue(L, lua_upvalueindex(3 + i)); |
625 | n = g_read(L, p->f, 2); /* 'n' is number of results */ | 625 | n = g_read(L, p->f, 2); /* 'n' is number of results */ |
626 | lua_assert(n > 0); /* should return at least a nil */ | 626 | lua_assert(n > 0); /* should return at least a nil */ |
627 | if (lua_toboolean(L, -n)) /* read at least one value? */ | 627 | if (!lua_isnil(L, -n)) /* read at least one value? */ |
628 | return n; /* return them */ | 628 | return n; /* return them */ |
629 | else { /* first result is nil: EOF or error */ | 629 | else { /* first result is nil: EOF or error */ |
630 | if (n > 1) { /* is there error information? */ | 630 | if (n > 1) { /* is there error information? */ |