From e0a3e3d1b64001030bccdba9b7d8e822616435e8 Mon Sep 17 00:00:00 2001
From: Jo-Philipp Wich <jow@openwrt.org>
Date: Fri, 11 Apr 2014 16:13:27 +0000
Subject: [PATCH] uhttpd: do not attempt to configure Lua handler if referenced
 file does not exist

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 40457
---
 package/network/services/uhttpd/files/uhttpd.init | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/package/network/services/uhttpd/files/uhttpd.init b/package/network/services/uhttpd/files/uhttpd.init
index 9a76d8c1ff..608aa9d36b 100755
--- a/package/network/services/uhttpd/files/uhttpd.init
+++ b/package/network/services/uhttpd/files/uhttpd.init
@@ -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"
-- 
2.25.1