@@ -93,12 +93,9 @@ static void print_version(void) {
9393 l_message(NULL, LUA_RELEASE " " LUA_COPYRIGHT);
9494}
9595
96−static int getargs(lua_State *L, char **argv, int n) {
96+static int getargs(lua_State *L, char **argv, int n, int argc) {
9797 int narg;
9898 int i;
99− int argc = 0;
100− while (argv[argc])
101− argc++; /* count total number of arguments */
10299 narg = argc - (n + 1); /* number of arguments to the script */
103100 luaL_checkstack(L, narg + 3, "too many arguments to script");
104101 for (i = n + 1; i < argc; i++)
@@ -230,7 +227,7 @@ void dotty(lua_State *L) {
230227int handle_script(lua_State *L, char **argv, int n) {
231228 int status;
232229 const char *fname;
233− int narg = getargs(L, argv, n); /* collect arguments */
230+ int narg = getargs(L, argv, n, 1); /* collect arguments */
234231 lua_setglobal(L, "arg");
235232 fname = argv[n];
236233 if (strcmp(fname, "-") == 0 && strcmp(argv[n - 1], "--") != 0)