]> git.lizzy.rs Git - minetest.git/commitdiff
Fix broken server startup if curl is disabled (#12046)
authorsfan5 <sfan5@live.de>
Fri, 4 Feb 2022 19:29:28 +0000 (20:29 +0100)
committerGitHub <noreply@github.com>
Fri, 4 Feb 2022 19:29:28 +0000 (20:29 +0100)
src/script/lua_api/l_http.cpp
src/script/lua_api/l_http.h

index bd359b3ccbbc216b27698f3041330ac78f17b153..5566a8523318c75433d6e90dbd70d33fc5fdf574 100644 (file)
@@ -162,20 +162,6 @@ int ModApiHttp::l_http_fetch_async_get(lua_State *L)
        return 1;
 }
 
-int ModApiHttp::l_set_http_api_lua(lua_State *L)
-{
-       NO_MAP_LOCK_REQUIRED;
-
-       // This is called by builtin to give us a function that will later
-       // populate the http_api table with additional method(s).
-       // We need this because access to the HTTP api is security-relevant and
-       // any mod could just mess with a global variable.
-       luaL_checktype(L, 1, LUA_TFUNCTION);
-       lua_rawseti(L, LUA_REGISTRYINDEX, CUSTOM_RIDX_HTTP_API_LUA);
-
-       return 0;
-}
-
 int ModApiHttp::l_request_http_api(lua_State *L)
 {
        NO_MAP_LOCK_REQUIRED;
@@ -215,6 +201,22 @@ int ModApiHttp::l_get_http_api(lua_State *L)
 
 #endif
 
+int ModApiHttp::l_set_http_api_lua(lua_State *L)
+{
+       NO_MAP_LOCK_REQUIRED;
+
+#if USE_CURL
+       // This is called by builtin to give us a function that will later
+       // populate the http_api table with additional method(s).
+       // We need this because access to the HTTP api is security-relevant and
+       // any mod could just mess with a global variable.
+       luaL_checktype(L, 1, LUA_TFUNCTION);
+       lua_rawseti(L, LUA_REGISTRYINDEX, CUSTOM_RIDX_HTTP_API_LUA);
+#endif
+
+       return 0;
+}
+
 void ModApiHttp::Initialize(lua_State *L, int top)
 {
 #if USE_CURL
@@ -231,6 +233,11 @@ void ModApiHttp::Initialize(lua_State *L, int top)
                API_FCT(set_http_api_lua);
        }
 
+#else
+
+       // Define this function anyway so builtin can call it without checking
+       API_FCT(set_http_api_lua);
+
 #endif
 }
 
index 17fa283bac0745f4f3994974f02a579a6d5ecff1..8d084ecd97d35cd42a77f0bcc9b4f8eab04c533d 100644 (file)
@@ -41,9 +41,6 @@ class ModApiHttp : public ModApiBase {
        // http_fetch_async_get(handle)
        static int l_http_fetch_async_get(lua_State *L);
 
-       // set_http_api_lua() [internal]
-       static int l_set_http_api_lua(lua_State *L);
-
        // request_http_api()
        static int l_request_http_api(lua_State *L);
 
@@ -51,6 +48,10 @@ class ModApiHttp : public ModApiBase {
        static int l_get_http_api(lua_State *L);
 #endif
 
+       // set_http_api_lua() [internal]
+       static int l_set_http_api_lua(lua_State *L);
+
+
 public:
        static void Initialize(lua_State *L, int top);
        static void InitializeAsync(lua_State *L, int top);