diff --git a/src/environment.cpp b/src/environment.cpp index 8ade7fe05..96353dffb 100644 --- a/src/environment.cpp +++ b/src/environment.cpp @@ -1238,7 +1238,7 @@ void ServerEnvironment::step(float dtime) // Read messages from object while(!obj->m_messages_out.empty()) { - m_active_object_messages.push_back( + m_active_object_messages.push( obj->m_messages_out.front()); obj->m_messages_out.pop(); } @@ -1462,7 +1462,7 @@ ActiveObjectMessage ServerEnvironment::getActiveObjectMessage() return ActiveObjectMessage(0); ActiveObjectMessage message = m_active_object_messages.front(); - m_active_object_messages.pop_front(); + m_active_object_messages.pop(); return message; } diff --git a/src/environment.h b/src/environment.h index 415a9ec31..a25a12db3 100644 --- a/src/environment.h +++ b/src/environment.h @@ -32,6 +32,7 @@ with this program; if not, write to the Free Software Foundation, Inc., #include #include +#include #include #include "irr_v3d.h" #include "activeobject.h" @@ -378,7 +379,7 @@ private: // Active object list std::map m_active_objects; // Outgoing network message buffer for active objects - std::list m_active_object_messages; + std::queue m_active_object_messages; // Some timers float m_send_recommended_timer; IntervalLimiter m_object_management_interval;