certi-devel
[Top][All Lists]
Advanced

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

bug report about certi 3.2.2


From: moosefly
Subject: bug report about certi 3.2.2
Date: Wed, 31 Jan 2007 08:58:04 +0800

Hi~

Firstly,sorry for my poor English.

I have port certi to win32 by vc++ 2005 express compiler, and it works
well.But there are some bugs under the vc8 compiler.

1.  In the NetworkMessage_RW.cc "NetworkMessage::readBody"

Compared with Message_RW.cc,I have found some difference. In the
Message::readBody, we use "MessageBody body(header.bodySize)" to
construct a messagebody and allocate some memory, but in the
NetworkMessage::readBody ,we just announced "MessageBody body;", there
is no memory allocated .So, an overflow error may occur when the
program read some network message.

I change it from "MessageBody body;" to "MessageBody
body(Header.bodySize) ;" just like Message::readBody in the
NetworkMessage::readBody.

2. In the RTIA_network.cc "RTIA::processNetworkMessage(NetworkMessage *msg)"

In this function, we do some job by the type of msg then save the
stat, so  the code just like :

switch(msg->type) {
case a:
   {
       ...
   }
case b:
   {
       ...
   }
case c:
   {
       ...
   }
......
}
stat.rtiService(msg->type);

In some case, msg maybe changed and it become invalid pointer, for
example , when  process the SET_TIME_REGULATING msg , so the msg
deleted the in these case .

But even the msg deleted, the last line "stat.rtiService(msg->type);"
still need to run, so error occurs because the msg is an invalid
pointer currently.

I don't know how to fix it and I just comment the last line.

Now , I can run the billard demo under the win32 wrapped by wxwidgets
and I prepare to use certi to some project in my job.

Lastly, certi is a great job,best regards.


address@hidden
2007.1.31




reply via email to

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