BUG/MINOR: lua: Some lua init operation are processed unsafe

Operation luaL_openlibs() and lua_prepend path are processed whithout
the safe context, so in case of failure Haproxy aborts or stops without
error message.

This patch could be backported until 1.8

(cherry picked from commit 2f05cc6f86ee6beda9c42a6bb99a9a96fad37b68)
Signed-off-by: Christopher Faulet <cfaulet@haproxy.com>
diff --git a/src/hlua.c b/src/hlua.c
index e1c316b..43a9745 100644
--- a/src/hlua.c
+++ b/src/hlua.c
@@ -8221,6 +8221,16 @@
 	 * process of HAProxy, this abort() is tolerated.
 	 */
 
+	/* Set safe environment for the initialisation. */
+	if (!SET_SAFE_LJMP(gL.T)) {
+		if (lua_type(gL.T, -1) == LUA_TSTRING)
+			error_msg = lua_tostring(gL.T, -1);
+		else
+			error_msg = "critical error";
+		fprintf(stderr, "Lua init: %s.\n", error_msg);
+		exit(1);
+	}
+
 	/* Initialise lua. */
 	luaL_openlibs(gL.T);
 #define HLUA_PREPEND_PATH_TOSTRING1(x) #x
@@ -8234,16 +8244,6 @@
 #undef HLUA_PREPEND_PATH_TOSTRING
 #undef HLUA_PREPEND_PATH_TOSTRING1
 
-	/* Set safe environment for the initialisation. */
-	if (!SET_SAFE_LJMP(gL.T)) {
-		if (lua_type(gL.T, -1) == LUA_TSTRING)
-			error_msg = lua_tostring(gL.T, -1);
-		else
-			error_msg = "critical error";
-		fprintf(stderr, "Lua init: %s.\n", error_msg);
-		exit(1);
-	}
-
 	/*
 	 *
 	 * Create "core" object.