From: paramat Date: Fri, 16 Jun 2017 02:47:12 +0000 (+0100) Subject: Chests: Check 'def' of node above chest to avoid crash X-Git-Tag: 0.4.17.1~38 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=da41caca66e7739743128e9e3d9c148718226f2d;p=oweals%2Fminetest_game.git Chests: Check 'def' of node above chest to avoid crash In 'chest_lid_obstructed(pos)' check for nil 'def' to avoid a crash caused by an unknown node above the chest. --- diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index f14e8b21..016b6aa8 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -1783,13 +1783,14 @@ local function get_chest_formspec(pos) end local function chest_lid_obstructed(pos) - local above = { x = pos.x, y = pos.y + 1, z = pos.z } + local above = {x = pos.x, y = pos.y + 1, z = pos.z} local def = minetest.registered_nodes[minetest.get_node(above).name] -- allow ladders, signs, wallmounted things and torches to not obstruct - if def.drawtype == "airlike" or + if def and + (def.drawtype == "airlike" or def.drawtype == "signlike" or def.drawtype == "torchlike" or - (def.drawtype == "nodebox" and def.paramtype2 == "wallmounted") then + (def.drawtype == "nodebox" and def.paramtype2 == "wallmounted")) then return false end return true