segfault
This commit is contained in:
		
							parent
							
								
									f5e0177b9e
								
							
						
					
					
						commit
						0e15be73af
					
				@ -4,6 +4,7 @@
 | 
				
			|||||||
#include "debug_functions.h"
 | 
					#include "debug_functions.h"
 | 
				
			||||||
#include "lobby.h"
 | 
					#include "lobby.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include <cstring>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
NetworkManager::NetworkManager(AOApplication *parent) : QObject(parent)
 | 
					NetworkManager::NetworkManager(AOApplication *parent) : QObject(parent)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
@ -75,8 +76,9 @@ void NetworkManager::ship_server_packet(QString p_packet)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
void NetworkManager::handle_ms_packet()
 | 
					void NetworkManager::handle_ms_packet()
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  char buffer[16384] = {0};
 | 
					  char buffer[buffer_max_size];
 | 
				
			||||||
  ms_socket->read(buffer, ms_socket->bytesAvailable());
 | 
					  std::memset(buffer, 0, buffer_max_size);
 | 
				
			||||||
 | 
					  ms_socket->read(buffer, buffer_max_size);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  QString in_data = buffer;
 | 
					  QString in_data = buffer;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -100,7 +102,7 @@ void NetworkManager::handle_ms_packet()
 | 
				
			|||||||
  QStringList packet_list = in_data.split("%", QString::SplitBehavior(QString::SkipEmptyParts));
 | 
					  QStringList packet_list = in_data.split("%", QString::SplitBehavior(QString::SkipEmptyParts));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  for (QString packet : packet_list)
 | 
					  for (QString packet : packet_list)
 | 
				
			||||||
  {    
 | 
					  {
 | 
				
			||||||
    AOPacket *f_packet = new AOPacket(packet);
 | 
					    AOPacket *f_packet = new AOPacket(packet);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    ao_app->ms_packet_received(f_packet);
 | 
					    ao_app->ms_packet_received(f_packet);
 | 
				
			||||||
@ -213,8 +215,9 @@ void NetworkManager::retry_ms_connect()
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
void NetworkManager::handle_server_packet()
 | 
					void NetworkManager::handle_server_packet()
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
  char buffer[16384] = {0};
 | 
					  char buffer[buffer_max_size];
 | 
				
			||||||
  server_socket->read(buffer, server_socket->bytesAvailable());
 | 
					  std::memset(buffer, 0, buffer_max_size);
 | 
				
			||||||
 | 
					  server_socket->read(buffer, buffer_max_size);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  QString in_data = buffer;
 | 
					  QString in_data = buffer;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -48,6 +48,9 @@ public:
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  const int ms_reconnect_delay_ms = 7000;
 | 
					  const int ms_reconnect_delay_ms = 7000;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // kind of arbitrary max buffer size
 | 
				
			||||||
 | 
					  const size_t buffer_max_size = 16384;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  bool ms_partial_packet = false;
 | 
					  bool ms_partial_packet = false;
 | 
				
			||||||
  QString ms_temp_packet = "";
 | 
					  QString ms_temp_packet = "";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user