]> git.lizzy.rs Git - dragonfireclient.git/blobdiff - builtin/mainmenu/common.lua
Merge branch 'master' of https://github.com/minetest/minetest
[dragonfireclient.git] / builtin / mainmenu / common.lua
index 782d6973fb60468d952dcf5edb05c0c6934f7570..cd896f9ec2001f7f80211ccfe873b21660a81aec 100644 (file)
@@ -62,24 +62,6 @@ function image_column(tooltip, flagname)
                "5=" .. core.formspec_escape(defaulttexturedir .. "server_ping_1.png")
 end
 
---------------------------------------------------------------------------------
-function order_favorite_list(list)
-       local res = {}
-       --orders the favorite list after support
-       for i = 1, #list do
-               local fav = list[i]
-               if is_server_protocol_compat(fav.proto_min, fav.proto_max) then
-                       res[#res + 1] = fav
-               end
-       end
-       for i = 1, #list do
-               local fav = list[i]
-               if not is_server_protocol_compat(fav.proto_min, fav.proto_max) then
-                       res[#res + 1] = fav
-               end
-       end
-       return res
-end
 
 --------------------------------------------------------------------------------
 function render_serverlist_row(spec, is_favorite)
@@ -87,7 +69,7 @@ function render_serverlist_row(spec, is_favorite)
        if spec.name then
                text = text .. core.formspec_escape(spec.name:trim())
        elseif spec.address then
-               text = text .. spec.address:trim()
+               text = text .. core.formspec_escape(spec.address:trim())
                if spec.port then
                        text = text .. ":" .. spec.port
                end
@@ -164,35 +146,15 @@ end
 
 --------------------------------------------------------------------------------
 os.tempfolder = function()
-       if core.settings:get("TMPFolder") then
-               return core.settings:get("TMPFolder") .. DIR_DELIM .. "MT_" .. math.random(0,10000)
-       end
-
-       local filetocheck = os.tmpname()
-       os.remove(filetocheck)
-
-       -- luacheck: ignore
-       -- https://blogs.msdn.microsoft.com/vcblog/2014/06/18/c-runtime-crt-features-fixes-and-breaking-changes-in-visual-studio-14-ctp1/
-       --   The C runtime (CRT) function called by os.tmpname is tmpnam.
-       --   Microsofts tmpnam implementation in older CRT / MSVC releases is defective.
-       --   tmpnam return values starting with a backslash characterize this behavior.
-       -- https://sourceforge.net/p/mingw-w64/bugs/555/
-       --   MinGW tmpnam implementation is forwarded to the CRT directly.
-       -- https://sourceforge.net/p/mingw-w64/discussion/723797/thread/55520785/
-       --   MinGW links to an older CRT release (msvcrt.dll).
-       --   Due to legal concerns MinGW will never use a newer CRT.
-       --
-       --   Make use of TEMP to compose the temporary filename if an old
-       --   style tmpnam return value is detected.
-       if filetocheck:sub(1, 1) == "\\" then
-               local tempfolder = os.getenv("TEMP")
-               return tempfolder .. filetocheck
-       end
+       local temp = core.get_temp_path()
+       return temp .. DIR_DELIM .. "MT_" .. math.random(0, 10000)
+end
 
-       local randname = "MTTempModFolder_" .. math.random(0,10000)
-       local backstring = filetocheck:reverse()
-       return filetocheck:sub(0, filetocheck:len() - backstring:find(DIR_DELIM) + 1) ..
-               randname
+--------------------------------------------------------------------------------
+os.tmpname = function()
+       local path = os.tempfolder()
+       io.open(path, "w"):close()
+       return path
 end
 
 --------------------------------------------------------------------------------
@@ -226,41 +188,6 @@ function menu_handle_key_up_down(fields, textlist, settingname)
        return false
 end
 
---------------------------------------------------------------------------------
-function asyncOnlineFavourites()
-       if not menudata.public_known then
-               menudata.public_known = {{
-                       name = fgettext("Loading..."),
-                       description = fgettext_ne("Try reenabling public serverlist and check your internet connection.")
-               }}
-       end
-       menudata.favorites = menudata.public_known
-       menudata.favorites_is_public = true
-
-       if not menudata.public_downloading then
-               menudata.public_downloading = true
-       else
-               return
-       end
-
-       core.handle_async(
-               function(param)
-                       return core.get_favorites("online")
-               end,
-               nil,
-               function(result)
-                       menudata.public_downloading = nil
-                       local favs = order_favorite_list(result)
-                       if favs[1] then
-                               menudata.public_known = favs
-                               menudata.favorites = menudata.public_known
-                               menudata.favorites_is_public = true
-                       end
-                       core.event_handler("Refresh")
-               end
-       )
-end
-
 --------------------------------------------------------------------------------
 function text2textlist(xpos, ypos, width, height, tl_name, textlen, text, transparency)
        local textlines = core.wrap_text(text, textlen, true)