aboutsummaryrefslogtreecommitdiff
path: root/liolib.c
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2019-07-31 11:41:59 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2019-07-31 11:41:59 -0300
commit223bb04090344b1972dc2a7910a54b46210f0d40 (patch)
tree4346fc4bfb9b32a6502a61f97f01f225ee4f7830 /liolib.c
parentfe040633a1d64af4c19acc4707adb47413a3cd4a (diff)
downloadlua-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.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/liolib.c b/liolib.c
index 83fbb172..56507d5e 100644
--- a/liolib.c
+++ b/liolib.c
@@ -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? */