Keys: Fix crash when using unconfigured default:key

Since meta secret field is blank on any keys (default:key) obtained using
/give, the game will crash if you attempt to use one of these. This follows
along the principle that the game should never have any reason to crash.
Šī revīzija ir iekļauta:
octacian
2017-03-15 22:03:52 -07:00
revīziju iesūtīja paramat
vecāks 68212967c0
revīzija 07e11427cf

Parādīt failu

@@ -562,7 +562,12 @@ function default.can_interact_with_node(player, pos)
local key_meta = item:get_meta()
if key_meta:get_string("secret") == "" then
key_meta:set_string("secret", minetest.parse_json(item:get_metadata()).secret)
local key_oldmeta = item:get_metadata()
if key_oldmeta == "" or not minetest.parse_json(key_oldmeta) then
return false
end
key_meta:set_string("secret", minetest.parse_json(key_oldmeta).secret)
item:set_metadata("")
end