Fix admin password handling in minetest.builtin_auth_handler.get_auth
authorPerttu Ahola <celeron55@gmail.com>
Fri, 30 Mar 2012 18:25:54 +0000 (21:25 +0300)
committerPerttu Ahola <celeron55@gmail.com>
Fri, 30 Mar 2012 18:25:54 +0000 (21:25 +0300)
builtin/builtin.lua

index 0cb7643945b16d37bdcab66c78726fea82873b5a..34bda824561dbe8f03183bbad101d3a8bc0b1c26 100644 (file)
@@ -1222,13 +1222,20 @@ minetest.builtin_auth_handler = {
                if not minetest.auth_table[name] then
                        minetest.builtin_auth_handler.create_auth(name, minetest.get_password_hash(name, minetest.setting_get("default_password")))
                end
-               if minetest.is_singleplayer() or name == minetest.setting_get("name") then
+               if minetest.is_singleplayer() then
                        return {
                                password = "",
                                privileges = minetest.registered_privileges
                        }
                else
-                       return minetest.auth_table[name]
+                       if minetest.auth_table[name] and name == minetest.setting_get("name") then
+                               return {
+                                       password = minetest.auth_table[name].password,
+                                       privileges = minetest.registered_privileges
+                               }
+                       else
+                               return minetest.auth_table[name]
+                       end
                end
        end,
        create_auth = function(name, password)