]> git.lizzy.rs Git - xdecor.git/blobdiff - src/mechanisms.lua
Final door toggle crash fix
[xdecor.git] / src / mechanisms.lua
index 20fac81d43ac9eac517d2a331f16405a6ea06665..b065c90471b7ca8fb26699b155c0e91a712e77bb 100644 (file)
@@ -14,14 +14,16 @@ local function door_toggle(pos_actuator, pos_door, player)
                minetest.set_node(pos_actuator,
                        {name=actuator.name:gsub("_off", "_on"), param2=actuator.param2})
        end
-       door:open(player_name)
+       door:open(player)
 
        minetest.after(2, function()
                if minetest.get_node(pos_actuator).name:sub(-3) == "_on" then
                        minetest.set_node(pos_actuator,
                                {name=actuator.name, param2=actuator.param2})
                end
-               door:close(player_name)
+               -- Re-get player object (or nil) because 'player' could
+               -- be an invalid object at this time (player left)
+               door:close(minetest.get_player_by_name(player_name))
        end)
 end