uhttpd: do not attempt to configure Lua handler if referenced file does not exist
authorjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Fri, 11 Apr 2014 16:13:27 +0000 (16:13 +0000)
committerjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Fri, 11 Apr 2014 16:13:27 +0000 (16:13 +0000)
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@40457 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/network/services/uhttpd/files/uhttpd.init

index 9a76d8c..608aa9d 100755 (executable)
@@ -57,7 +57,7 @@ start_instance()
 
        local cfg="$1"
        local realm="$(uci_get system.@system[0].hostname)"
-       local listen http https interpreter indexes path
+       local listen http https interpreter indexes path handler
 
        procd_open_instance
        procd_set_param respawn
@@ -68,8 +68,10 @@ start_instance()
        append_arg "$cfg" config "-c"
        append_arg "$cfg" cgi_prefix "-x"
        [ -f /usr/lib/uhttpd_lua.so ] && {
-               append_arg "$cfg" lua_prefix "-l"
-               append_arg "$cfg" lua_handler "-L"
+               config_get handler "$cfg" lua_handler
+               [ -f "$handler" ] && append_arg "$cfg" lua_prefix "-l" && {
+                       procd_append_param command "-L" "$handler"
+               }
        }
        [ -f /usr/lib/uhttpd_ubus.so ] && {
                append_arg "$cfg" ubus_prefix "-u"