Module Name: src
Committed By: martin
Date: Sun May 22 10:28:49 UTC 2016
Modified Files:
src/sys/modules/lua [netbsd-7]: lua.c
Log Message:
Pull up following revision(s) (requested by salazar in ticket #1171):
sys/modules/lua/lua.c: revision 1.17
fix double require bug
To generate a diff of this commit:
cvs rdiff -u -r1.13.2.2 -r1.13.2.3 src/sys/modules/lua/lua.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/modules/lua/lua.c
diff -u src/sys/modules/lua/lua.c:1.13.2.2 src/sys/modules/lua/lua.c:1.13.2.3
--- src/sys/modules/lua/lua.c:1.13.2.2 Mon Feb 16 21:25:35 2015
+++ src/sys/modules/lua/lua.c Sun May 22 10:28:49 2016
@@ -1,4 +1,4 @@
-/* $NetBSD: lua.c,v 1.13.2.2 2015/02/16 21:25:35 martin Exp $ */
+/* $NetBSD: lua.c,v 1.13.2.3 2016/05/22 10:28:49 martin Exp $ */
/*
* Copyright (c) 2014 by Lourival Vieira Neto <[email protected]>.
@@ -355,7 +355,10 @@ luaioctl(dev_t dev, u_long cmd, void *da
case LUAREQUIRE: /* 'require' a module in a State */
require = data;
LIST_FOREACH(s, &lua_states, lua_next)
- if (!strcmp(s->lua_name, require->state))
+ if (!strcmp(s->lua_name, require->state)) {
+ LIST_FOREACH(m, &s->lua_modules, mod_next)
+ if (!strcmp(m->mod_name, require->module))
+ return ENXIO;
LIST_FOREACH(m, &lua_modules, mod_next)
if (!strcmp(m->mod_name,
require->module)) {
@@ -379,6 +382,7 @@ luaioctl(dev_t dev, u_long cmd, void *da
mod_next);
return 0;
}
+ }
return ENXIO;
case LUALOAD:
load = data;