# HG changeset patch # User unc0rr # Date 1510003614 -3600 # Node ID c75781937859f126ea55bb226b3f2c7193306dc7 # Parent e2e372449c190be9df32a3b6b55cc81d4ae5185d - Update .pro file - Rethink logic of TCPBase, fixes bug with failing to receive all bytes from engine when process end signal is received before tcp disconnect diff -r e2e372449c19 -r c75781937859 QTfrontend/net/tcpBase.cpp --- a/QTfrontend/net/tcpBase.cpp Fri Nov 03 13:40:30 2017 +0100 +++ b/QTfrontend/net/tcpBase.cpp Mon Nov 06 22:26:54 2017 +0100 @@ -190,7 +190,6 @@ void TCPBase::ClientDisconnect() { - disconnect(IPCSocket, SIGNAL(readyRead()), this, SLOT(ClientRead())); onClientDisconnect(); if(!simultaneousRun()) @@ -202,8 +201,11 @@ emit isReadyNow(); } - IPCSocket->deleteLater(); - IPCSocket = NULL; + if(IPCSocket) { + disconnect(IPCSocket, SIGNAL(readyRead()), this, SLOT(ClientRead())); + IPCSocket->deleteLater(); + IPCSocket = NULL; + } deleteLater(); } @@ -226,7 +228,8 @@ { Q_UNUSED(exitStatus); - ClientDisconnect(); + if(!m_connected) + ClientDisconnect(); // show error message if there was an error that was not an engine's // fatal error - because that one already sent a info via IPC @@ -242,16 +245,6 @@ .arg("Feedback")); } - - // cleanup up - if (IPCSocket) - { - IPCSocket->close(); - IPCSocket->deleteLater(); - } - - // plot suicide - deleteLater(); } void TCPBase::tcpServerReady() diff -r e2e372449c19 -r c75781937859 QTfrontend/ui/widget/MinesTimeSpinBox.h --- a/QTfrontend/ui/widget/MinesTimeSpinBox.h Fri Nov 03 13:40:30 2017 +0100 +++ b/QTfrontend/ui/widget/MinesTimeSpinBox.h Mon Nov 06 22:26:54 2017 +0100 @@ -44,7 +44,7 @@ protected: /** - * Returns it's value localized. + * Returns its value localized. * @param value integer value to be representing as string. * @return string representation */ diff -r e2e372449c19 -r c75781937859 project_files/hedgewars.pro --- a/project_files/hedgewars.pro Fri Nov 03 13:40:30 2017 +0100 +++ b/project_files/hedgewars.pro Mon Nov 06 22:26:54 2017 +0100 @@ -117,6 +117,7 @@ ../QTfrontend/servermessages.h \ ../QTfrontend/ui/widget/roomnameprompt.h \ ../QTfrontend/weapons.h \ + ../QTfrontend/ui/widget/MinesTimeSpinBox.h \ ../QTfrontend/net/hwmapoptimizer.h @@ -216,6 +217,7 @@ ../QTfrontend/ui/widget/feedbackdialog.cpp \ ../QTfrontend/ui/widget/lineeditcursor.cpp \ ../QTfrontend/ui/widget/roomnameprompt.cpp \ + ../QTfrontend/ui/widget/MinesTimeSpinBox.cpp \ ../QTfrontend/net/hwmapoptimizer.cpp