From 942aefd7ddd52aa72f74171dd6402fb168fbcd7e Mon Sep 17 00:00:00 2001 From: SoniEx2 Date: Sat, 24 May 2014 16:21:46 -0400 Subject: [PATCH] Better handling of function calls Make sure that bad function calls fail safely, and failed function calls don't leave spawned=true --- plants_lib/init.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plants_lib/init.lua b/plants_lib/init.lua index a350200..1c698eb 100644 --- a/plants_lib/init.lua +++ b/plants_lib/init.lua @@ -189,8 +189,8 @@ function plantslib:search_for_surfaces(minp, maxp, biomedef, node_or_function_or minetest.registered_nodes[node_or_function_or_model] then minetest.add_node(p_top, { name = node_or_function_or_model }) spawned = true - elseif pcall(loadstring(("return type(%s) == \"function\" and %s(%s)"): - format(node_or_function_or_model, node_or_function_or_model, dump_pos(pos)))) then + elseif pcall(loadstring(("return %s(%s)"): + format(node_or_function_or_model, dump_pos(pos)))) then spawned = true else print("Ignored invalid definition for object "..dump(node_or_function_or_model).." that was pointed at {"..dump(pos).."}")