From 704d8a62bf4c52c5ac0d9a85b0b902ea833a7e90 Mon Sep 17 00:00:00 2001
From: Perttu Ahola <celeron55@gmail.com>
Date: Fri, 25 Nov 2011 15:19:42 +0200
Subject: Set block modified flag when node metadata inventory is modified

---
 src/server.cpp | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

(limited to 'src')

diff --git a/src/server.cpp b/src/server.cpp
index dd4a93c78..cd67bc749 100644
--- a/src/server.cpp
+++ b/src/server.cpp
@@ -3535,14 +3535,12 @@ void Server::inventoryModified(InventoryContext *c, std::string id)
 		NodeMetadata *meta = m_env->getMap().getNodeMetadata(p);
 		if(meta)
 			meta->inventoryModified();
-
-		for(core::map<u16, RemoteClient*>::Iterator
-			i = m_clients.getIterator();
-			i.atEnd()==false; i++)
-		{
-			RemoteClient *client = i.getNode()->getValue();
-			client->SetBlockNotSent(blockpos);
-		}
+		
+		MapBlock *block = m_env.getMap().getBlockNoCreateNoEx(blockpos);
+		if(block)
+			block->raiseModified(MOD_STATE_WRITE_NEEDED);
+		
+		setBlockNotSent(blockpos);
 
 		return;
 	}
-- 
cgit v1.2.3