Segfault fix.

Reimplementation of `0e15be73af266d5fbff3d83d731a7af2773ff532` from old
origin.
This commit is contained in:
Cerapter 2018-08-19 08:41:00 +02:00
parent feee84588c
commit ed68084e08
2 changed files with 9 additions and 4 deletions

View File

@ -4,6 +4,8 @@
#include "debug_functions.h"
#include "lobby.h"
#include <cstring>
NetworkManager::NetworkManager(AOApplication *parent) : QObject(parent)
{
@ -79,8 +81,9 @@ void NetworkManager::ship_server_packet(QString p_packet)
void NetworkManager::handle_ms_packet()
{
char buffer[16384] = {0};
ms_socket->read(buffer, ms_socket->bytesAvailable());
char buffer[buffer_max_size];
std::memset(buffer, 0, buffer_max_size);
ms_socket->read(buffer, buffer_max_size);
QString in_data = buffer;
@ -217,8 +220,9 @@ void NetworkManager::retry_ms_connect()
void NetworkManager::handle_server_packet()
{
char buffer[16384] = {0};
server_socket->read(buffer, server_socket->bytesAvailable());
char buffer[buffer_max_size];
std::memset(buffer, 0, buffer_max_size);
server_socket->read(buffer, buffer_max_size);
QString in_data = buffer;

View File

@ -47,6 +47,7 @@ public:
const int timeout_milliseconds = 2000;
const int ms_reconnect_delay_ms = 7000;
const size_t buffer_max_size = 16384;
bool ms_partial_packet = false;
QString ms_temp_packet = "";