summaryrefslogtreecommitdiff
path: root/src/lauxlib.c
diff options
context:
space:
mode:
authorLua Team <team@lua.org>2012-03-21 12:00:00 +0000
committerrepogen <>2012-03-21 12:00:00 +0000
commit1cb937cf2d4583482aadaff45b6628b39fdcd91e (patch)
tree614eba453350c41305e41d647e9e03d779314f89 /src/lauxlib.c
parent6ee889a587f9b600b564d5c0ba0350faab0387cd (diff)
downloadlua-github-5.2.1-work1.tar.gz
Lua 5.2.1-work15.2.1-work1
Diffstat (limited to 'src/lauxlib.c')
-rw-r--r--src/lauxlib.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/lauxlib.c b/src/lauxlib.c
index 0aa80fd9..5f4916ea 100644
--- a/src/lauxlib.c
+++ b/src/lauxlib.c
@@ -1,5 +1,5 @@
/*
-** $Id: lauxlib.c,v 1.240 2011/12/06 16:33:55 roberto Exp $
+** $Id: lauxlib.c,v 1.242 2012/03/19 22:57:14 roberto Exp $
** Auxiliary functions for building Lua libraries
** See Copyright Notice in lua.h
*/
@@ -616,8 +616,10 @@ static int skipBOM (LoadF *lf) {
static int skipcomment (LoadF *lf, int *cp) {
int c = *cp = skipBOM(lf);
if (c == '#') { /* first line is a comment (Unix exec. file)? */
- while ((c = getc(lf->f)) != EOF && c != '\n') ; /* skip first line */
- *cp = getc(lf->f); /* skip end-of-line */
+ do { /* skip first line */
+ c = getc(lf->f);
+ } while (c != EOF && c != '\n') ;
+ *cp = getc(lf->f); /* skip end-of-line, if present */
return 1; /* there was a comment */
}
else return 0; /* no comment */
@@ -843,6 +845,7 @@ LUALIB_API void luaL_openlib (lua_State *L, const char *libname,
** Returns with only the table at the stack.
*/
LUALIB_API void luaL_setfuncs (lua_State *L, const luaL_Reg *l, int nup) {
+ luaL_checkversion(L);
luaL_checkstack(L, nup, "too many upvalues");
for (; l->name != NULL; l++) { /* fill the table with given functions */
int i;