From 03c6bb9f85b929a99df2c800b8ba7d8ef4a8ec43 Mon Sep 17 00:00:00 2001 From: "madmaxoft@gmail.com" Date: Thu, 13 Jun 2013 07:36:43 +0000 Subject: Added hopper entity, it can suck items out of chests, dispensers, droppers and other hopppers above it. git-svn-id: http://mc-server.googlecode.com/svn/trunk@1587 0a769ca7-a7f5-676a-18bf-c427514a06d6 --- source/ItemGrid.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'source/ItemGrid.cpp') diff --git a/source/ItemGrid.cpp b/source/ItemGrid.cpp index c62ea6bcc..1154250f1 100644 --- a/source/ItemGrid.cpp +++ b/source/ItemGrid.cpp @@ -616,9 +616,13 @@ void cItemGrid::RemoveListener(cListener & a_Listener) void cItemGrid::TriggerListeners(int a_SlotNum) { - cCSLock Lock(m_CSListeners); - m_IsInTriggerListeners = true; - for (cListeners::iterator itr = m_Listeners.begin(), end = m_Listeners.end(); itr != end; ++itr) + cListeners Listeners; + { + cCSLock Lock(m_CSListeners); + m_IsInTriggerListeners = true; + Listeners = m_Listeners; + } + for (cListeners::iterator itr = Listeners.begin(), end = Listeners.end(); itr != end; ++itr) { (*itr)->OnSlotChanged(this, a_SlotNum); } // for itr - m_Listeners[] -- cgit v1.2.3