From 31b84ce1f2c4f9c6264f32427c3e7be1215360f1 Mon Sep 17 00:00:00 2001 From: Loic Blot Date: Tue, 25 Jul 2017 08:39:42 +0200 Subject: Move MapEditEventAreaIgnorer to emerge.cpp It's only used in emerge threads and it's a local object, don't expose it to the whole Minetest --- src/emerge.cpp | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'src/emerge.cpp') diff --git a/src/emerge.cpp b/src/emerge.cpp index f5852aaae..0fc31e9e1 100644 --- a/src/emerge.cpp +++ b/src/emerge.cpp @@ -85,6 +85,31 @@ private: friend class EmergeManager; }; +class MapEditEventAreaIgnorer +{ +public: + MapEditEventAreaIgnorer(VoxelArea *ignorevariable, const VoxelArea &a): + m_ignorevariable(ignorevariable) + { + if(m_ignorevariable->getVolume() == 0) + *m_ignorevariable = a; + else + m_ignorevariable = NULL; + } + + ~MapEditEventAreaIgnorer() + { + if(m_ignorevariable) + { + assert(m_ignorevariable->getVolume() != 0); + *m_ignorevariable = VoxelArea(); + } + } + +private: + VoxelArea *m_ignorevariable; +}; + //// //// EmergeManager //// -- cgit v1.2.3