From b3873fcfaf2624f8d017ff7ec6cdde4a8ee19caf Mon Sep 17 00:00:00 2001 From: ShadowNinja Date: Sat, 4 Oct 2014 15:42:29 -0400 Subject: [PATCH] Make find_areas an admin-only command Some regexes can be very slow. This also fixes a bug with single-item result sets. --- chatcommands.lua | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/chatcommands.lua b/chatcommands.lua index b467331..9123957 100644 --- a/chatcommands.lua +++ b/chatcommands.lua @@ -143,6 +143,7 @@ minetest.register_chatcommand("rename_area", { minetest.register_chatcommand("find_areas", { params = "", description = "Find areas using a Lua regular expression", + privs = areas.adminPrivs, func = function(name, param) if param == "" then return false, "A regular expression is required." @@ -158,12 +159,12 @@ minetest.register_chatcommand("find_areas", { local matches = {} for id, area in pairs(areas.areas) do - if areas:isAreaOwner(id, name) and - areas:toString(id):find(param) then - table.insert(matches, areas:toString(id)) + local str = areas:toString(id) + if str:find(param) then + table.insert(matches, str) end end - if #matches > 1 then + if #matches > 0 then return true, table.concat(matches, "\n") else return true, "No matches found."