uhttpd: only enable Lua runtime if a handler was specified
This commit is contained in:
parent
87329b4522
commit
3403abe05f
1 changed files with 16 additions and 16 deletions
|
@ -347,8 +347,8 @@ static int uh_docroot_resolve(const char *path, char *buf)
|
|||
int main (int argc, char **argv)
|
||||
{
|
||||
#ifdef HAVE_LUA
|
||||
/* init Lua runtime */
|
||||
lua_State *L;
|
||||
/* Lua runtime */
|
||||
lua_State *L = NULL;
|
||||
#endif
|
||||
|
||||
/* master file descriptor list */
|
||||
|
@ -552,15 +552,6 @@ int main (int argc, char **argv)
|
|||
exit(1);
|
||||
}
|
||||
|
||||
#ifdef HAVE_LUA
|
||||
/* default lua prefix and handler */
|
||||
if( ! conf.lua_handler )
|
||||
conf.lua_handler = "./lua/handler.lua";
|
||||
|
||||
if( ! conf.lua_prefix )
|
||||
conf.lua_prefix = "/lua";
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_CGI
|
||||
/* default cgi prefix */
|
||||
if( ! conf.cgi_prefix )
|
||||
|
@ -568,8 +559,15 @@ int main (int argc, char **argv)
|
|||
#endif
|
||||
|
||||
#ifdef HAVE_LUA
|
||||
/* init Lua runtime */
|
||||
/* init Lua runtime if handler is specified */
|
||||
if( conf.lua_handler )
|
||||
{
|
||||
/* default lua prefix */
|
||||
if( ! conf.lua_prefix )
|
||||
conf.lua_prefix = "/lua";
|
||||
|
||||
L = uh_lua_init(conf.lua_handler);
|
||||
}
|
||||
#endif
|
||||
|
||||
/* fork (if not disabled) */
|
||||
|
@ -682,8 +680,9 @@ int main (int argc, char **argv)
|
|||
#endif
|
||||
|
||||
#ifdef HAVE_LUA
|
||||
if( strstr(req->url, conf.lua_prefix) == req->url )
|
||||
{
|
||||
if( (L != NULL) &&
|
||||
(strstr(req->url, conf.lua_prefix) == req->url)
|
||||
) {
|
||||
uh_lua_request(cl, req, L);
|
||||
}
|
||||
else
|
||||
|
@ -715,6 +714,7 @@ int main (int argc, char **argv)
|
|||
|
||||
#ifdef HAVE_LUA
|
||||
/* destroy the Lua state */
|
||||
if( L != NULL )
|
||||
lua_close(L);
|
||||
#endif
|
||||
|
||||
|
|
Loading…
Reference in a new issue