commit 6233d21c9d5bda52438ac736ca4ecd57ca16bd70
parent ab8ea5c38a5ac590103eaa8a3f51ee839c56b573
Author: Roberto Ierusalimschy <roberto@inf.puc-rio.br>
Date: Thu, 4 Mar 1999 11:50:04 -0300
file stream cannot call fread after EOF.
Diffstat:
2 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/bugs b/bugs
@@ -70,3 +70,8 @@ lua_isnumber can modify it.
** lstrlib.c
Thu Feb 4 17:08:50 EDT 1999
>> format "%s" may break limit of "sprintf" on some machines.
+
+
+** lzio.c
+Thu Mar 4 11:49:37 EST 1999
+>> file stream cannot call fread after EOF.
diff --git a/lzio.c b/lzio.c
@@ -1,5 +1,5 @@
/*
-** $Id: lzio.c,v 1.4 1998/12/28 13:44:54 roberto Exp roberto $
+** $Id: lzio.c,v 1.5 1999/02/25 19:13:56 roberto Exp roberto $
** a generic input stream interface
** See Copyright Notice in lua.h
*/
@@ -41,9 +41,10 @@ ZIO* zsopen (ZIO* z, char* s, char *name)
/* -------------------------------------------------------------- FILEs --- */
-static int zffilbuf (ZIO* z)
-{
- int n=fread(z->buffer,1,ZBSIZE,z->u);
+static int zffilbuf (ZIO* z) {
+ int n;
+ if (feof(z->u)) return EOZ;
+ n=fread(z->buffer,1,ZBSIZE,z->u);
if (n==0) return EOZ;
z->n=n-1;
z->p=z->buffer;