certi-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[certi-cvs] certi/libCERTI NetworkMessage_RW.cc


From: certi-cvs
Subject: [certi-cvs] certi/libCERTI NetworkMessage_RW.cc
Date: Sun, 30 May 2010 17:41:07 +0000

CVSROOT:        /sources/certi
Module name:    certi
Changes by:     Eric NOULARD <erk>      10/05/30 17:41:07

Modified files:
        libCERTI       : NetworkMessage_RW.cc 

Log message:
        Always write federate ID and federation ID
        even if the message contains an exception.
        This is no big deal since this is already an exceptionnal condition
        Should fix 
        bug #29560 : rtia::Communications::waitMessage hangs when receiving an 
exception message
        
        Solution proposed by Jeroen.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/certi/libCERTI/NetworkMessage_RW.cc?cvsroot=certi&r1=3.57&r2=3.58

Patches:
Index: NetworkMessage_RW.cc
===================================================================
RCS file: /sources/certi/certi/libCERTI/NetworkMessage_RW.cc,v
retrieving revision 3.57
retrieving revision 3.58
diff -u -b -r3.57 -r3.58
--- NetworkMessage_RW.cc        23 Mar 2010 13:13:27 -0000      3.57
+++ NetworkMessage_RW.cc        30 May 2010 17:41:06 -0000      3.58
@@ -16,7 +16,7 @@
 // License along with this program ; if not, write to the Free Software
 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
 //
-// $Id: NetworkMessage_RW.cc,v 3.57 2010/03/23 13:13:27 erk Exp $
+// $Id: NetworkMessage_RW.cc,v 3.58 2010/05/30 17:41:06 erk Exp $
 // ----------------------------------------------------------------------------
 
 #include "NetworkMessage.hh"
@@ -42,12 +42,12 @@
        D.Out(pdDebug, "Serialize <%s>", getMessageName());
        /* type of message */
        msgBuffer.write_int32(type);
+       msgBuffer.write_uint32(federate);
+       msgBuffer.write_uint32(federation);
        msgBuffer.write_int32(exception);
        if (exception != e_NO_EXCEPTION) {
                msgBuffer.write_string(exceptionReason);
        } else {
-               msgBuffer.write_uint32(federate);
-               msgBuffer.write_uint32(federation);
                BasicMessage::serialize(msgBuffer);
        }
        G.Out(pdGendoc,"exit NetworkMessage::serialize");
@@ -61,12 +61,12 @@
        Debug(D, pdDebug) << "Deserialize <" << getMessageName() << ">" << endl;
        /* deserialize common part */
        type        = static_cast<NetworkMessage::Type>(msgBuffer.read_int32());
+       federate    = msgBuffer.read_uint32();
+       federation  = msgBuffer.read_uint32();
        exception   = static_cast<TypeException>(msgBuffer.read_int32());
        if (exception != e_NO_EXCEPTION) {
                        msgBuffer.read_string(exceptionReason);
        } else {
-                       federate    = msgBuffer.read_uint32();
-                       federation  = msgBuffer.read_uint32();
                        BasicMessage::deserialize(msgBuffer);
        }
        G.Out(pdGendoc,"exit NetworkMessage::deserialize");
@@ -123,4 +123,4 @@
 
 } // namespace certi
 
-// $Id: NetworkMessage_RW.cc,v 3.57 2010/03/23 13:13:27 erk Exp $
+// $Id: NetworkMessage_RW.cc,v 3.58 2010/05/30 17:41:06 erk Exp $



reply via email to

[Prev in Thread] Current Thread [Next in Thread]