MEDIUM: lua-thread: No longer use locked context in initialization parts

The goal is to allow execution of one main lua state per thread.

Stop using locks in init part, we will use only in parts where
the parent lua state is known, so we could take decision about lock
according with the lua parent state.
diff --git a/src/hlua.c b/src/hlua.c
index 6153ab7..94bbad7 100644
--- a/src/hlua.c
+++ b/src/hlua.c
@@ -8273,13 +8273,16 @@
 		hlua_global_allocator.limit = ~hlua_global_allocator.limit;
 
 	/* Call post initialisation function in safe environment. */
-	if (!SET_SAFE_LJMP(L)) {
+	if (setjmp(safe_ljmp_env) != 0) {
+		lua_atpanic(L, hlua_panic_safe);
 		if (lua_type(L, -1) == LUA_TSTRING)
 			error = lua_tostring(L, -1);
 		else
 			error = "critical error";
 		fprintf(stderr, "Lua post-init: %s.\n", error);
 		exit(1);
+	} else {
+		lua_atpanic(L, hlua_panic_ljmp);
 	}
 
 	hlua_fcn_post_init(L);
@@ -8338,7 +8341,8 @@
 		if (!return_status)
 			break;
 	}
-	RESET_SAFE_LJMP(L);
+
+	lua_atpanic(L, hlua_panic_safe);
 	return return_status;
 }
 
@@ -8435,17 +8439,19 @@
 	 * process of HAProxy, this abort() is tolerated.
 	 */
 
-	/* Set safe environment for the initialisation. */
-	if (!SET_SAFE_LJMP(L)) {
+	/* Call post initialisation function in safe environment. */
+	if (setjmp(safe_ljmp_env) != 0) {
+		lua_atpanic(L, hlua_panic_safe);
 		if (lua_type(L, -1) == LUA_TSTRING)
 			error_msg = lua_tostring(L, -1);
 		else
 			error_msg = "critical error";
 		fprintf(stderr, "Lua init: %s.\n", error_msg);
 		exit(1);
+	} else {
+		lua_atpanic(L, hlua_panic_ljmp);
 	}
 
-
 	/* Initialise lua. */
 	luaL_openlibs(L);
 #define HLUA_PREPEND_PATH_TOSTRING1(x) #x
@@ -8990,7 +8996,7 @@
 	}
 #endif
 
-	RESET_SAFE_LJMP(L);
+	lua_atpanic(L, hlua_panic_safe);
 
 	return L;
 }