]> git.mxchange.org Git - flightgear.git/blobdiff - src/MultiPlayer/multiplaymgr.cxx
Suppress a recurrent "no error" message, at least with MSVC
[flightgear.git] / src / MultiPlayer / multiplaymgr.cxx
index ec1ecb820bb682586969ffb54dc5b41e576ad8e3..2805260a90af49e081a50a3af34d9d529e3a9987 100644 (file)
@@ -351,7 +351,7 @@ FGMultiplayMgr::Update(void)
     //  no Data received
     //////////////////////////////////////////////////
     if (bytes <= 0) {
-      if (errno != EAGAIN)
+      if (errno != EAGAIN && errno != 0) // MSVC output "NoError" otherwise
         perror("FGMultiplayMgr::MP_ProcessData");
       break;
     }
@@ -484,7 +484,7 @@ FGMultiplayMgr::ProcessChatMsg(const char *Msg, netAddress& SenderAddress)
     return;
   }
   
-  char MsgBuf[MsgHdr->MsgLen - sizeof(T_MsgHdr)];
+  char *MsgBuf = new char[MsgHdr->MsgLen - sizeof(T_MsgHdr)];
   strncpy(MsgBuf, ((T_ChatMsg *)(Msg + sizeof(T_MsgHdr)))->Text,
           MsgHdr->MsgLen - sizeof(T_MsgHdr));
   MsgBuf[MsgHdr->MsgLen - sizeof(T_MsgHdr) - 1] = '\0';
@@ -492,6 +492,7 @@ FGMultiplayMgr::ProcessChatMsg(const char *Msg, netAddress& SenderAddress)
   T_ChatMsg* ChatMsg = (T_ChatMsg *)(Msg + sizeof(T_MsgHdr));
   SG_LOG ( SG_NETWORK, SG_ALERT, "Chat [" << MsgHdr->Callsign << "]"
            << " " << MsgBuf << endl);
+  delete [] MsgBuf;
 } // FGMultiplayMgr::ProcessChatMsg ()
 //////////////////////////////////////////////////////////////////////