[reSIProcate] Another question on KeepAlive

John Draper lists at webcrunchers.com
Wed May 3 03:18:36 CDT 2006


Hi,

In my sleuthing around, I discovered the following....

void
TransactionState::process(TransactionController& controller)
{
   TransactionMessage* message = controller.mStateMacFifo.getNext();
   {
      KeepAliveMessage* keepAlive = 
dynamic_cast<KeepAliveMessage*>(message);
      if (keepAlive)
      {
         InfoLog ( << "Sending keep alive to: " << 
keepAlive->getDestination());     
         controller.mTransportSelector.transmit(keepAlive, 
keepAlive->getDestination());
         delete keepAlive;
         return;     
      }
   }
   < more stuff deleted >

I stopped at the "if keepAlive" - then checked the following variables

message is 0x887ae00
keepAlive = 0x0

Shouldn't the keepAlive be the same pointer as "message", only it's just 
dynamic casted?

Is there something I overlooked?  Could the compiler be messed up?

So the "if" never takes....

I'm trying to dig through the code and backtrack to find out why the 
"keepAlive" is 0x0
With the eventual goal of turning on the KeepAlives.

John




More information about the resiprocate-devel mailing list