Module Name: src Committed By: snj Date: Sun Jul 23 06:00:39 UTC 2017
Modified Files: src/sys/modules/lua [netbsd-7]: lua.c Log Message: Pull up following revision(s) (requested by mbalmer in ticket #1422): sys/modules/lua/lua.c: revision 1.22 via patch Only load a module if it is not already loaded in a state (much like userland Lua handles require). Fixes PR kern/52226. To generate a diff of this commit: cvs rdiff -u -r1.13.2.4 -r1.13.2.5 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.4 src/sys/modules/lua/lua.c:1.13.2.5 --- src/sys/modules/lua/lua.c:1.13.2.4 Sun Jul 23 05:55:03 2017 +++ src/sys/modules/lua/lua.c Sun Jul 23 06:00:39 2017 @@ -1,8 +1,8 @@ -/* $NetBSD: lua.c,v 1.13.2.4 2017/07/23 05:55:03 snj Exp $ */ +/* $NetBSD: lua.c,v 1.13.2.5 2017/07/23 06:00:39 snj Exp $ */ /* + * Copyright (c) 2011 - 2017 by Marc Balmer <mbal...@netbsd.org>. * Copyright (c) 2014 by Lourival Vieira Neto <ln...@netbsd.org>. - * Copyright (c) 2011, 2013 by Marc Balmer <mbal...@netbsd.org>. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -513,6 +513,10 @@ lua_require(lua_State *L) if (md != NULL) LIST_FOREACH(s, &lua_states, lua_next) if (s->K->L == L) { + LIST_FOREACH(m, &s->lua_modules, mod_next) + if (m == md) + return 1; + if (lua_verbose) device_printf(sc_self, "require module %s\n",