From 163dffccb38a1f4e37866d7232cecfb5238f7af7 Mon Sep 17 00:00:00 2001 From: ShadowNinja Date: Sat, 16 May 2015 19:52:11 -0400 Subject: [PATCH] Fix leaking {safe,check}_region --- worldedit_commands/init.lua | 3 +-- worldedit_commands/safe.lua | 7 +++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/worldedit_commands/init.lua b/worldedit_commands/init.lua index 692b0ec..0fa8e38 100644 --- a/worldedit_commands/init.lua +++ b/worldedit_commands/init.lua @@ -11,8 +11,7 @@ if minetest.place_schematic then end dofile(minetest.get_modpath("worldedit_commands") .. "/mark.lua") -dofile(minetest.get_modpath("worldedit_commands") .. "/safe.lua") -safe_region = rawget(_G, "safe_region") or function(callback) return callback end +local safe_region, check_region = dofile(minetest.get_modpath("worldedit_commands") .. "/safe.lua") local function get_position(name) --position 1 retrieval function for when not using `safe_region` local pos1 = worldedit.pos1[name] diff --git a/worldedit_commands/safe.lua b/worldedit_commands/safe.lua index c6751c1..e640853 100644 --- a/worldedit_commands/safe.lua +++ b/worldedit_commands/safe.lua @@ -1,7 +1,7 @@ local safe_region_callback = {} local safe_region_param = {} -check_region = function(name, param) +local function check_region(name, param) local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name] --obtain positions if pos1 == nil or pos2 == nil then worldedit.player_notify(name, "no region selected") @@ -12,7 +12,7 @@ end --`callback` is a callback to run when the user confirms --`nodes_needed` is a function accepting `param`, `pos1`, and `pos2` to calculate the number of nodes needed -safe_region = function(callback, nodes_needed) +local function safe_region(callback, nodes_needed) --default node volume calculation nodes_needed = nodes_needed or check_region @@ -63,3 +63,6 @@ minetest.register_chatcommand("/n", { safe_region_callback[name], safe_region_param[name] = nil, nil end, }) + +return safe_region, check_region +