On Tue, 2010-09-28 at 14:56 -0700, sodandk wrote: > const cms::Destination *d = > DestinationManager.Manage(jmsmsg->getCMSReplyTo()); > > > > from .h file > vector<const cms::Destination *> destinations; > > > from .cpp file > const cms::Destination *DestinationManager::Manage( > const cms::Destination *inDestination) > { > ActiveMQDestination *newmqdest = (ActiveMQDestination*)inDestination; > > for (size_t x=0;x<destinations.size();x++) > { > ActiveMQDestination *oldmqdest = > (ActiveMQDestination*)destinations[x]; > if (newmqdest->equals(oldmqdest)) > return destinations[x]; > } > > const cms::Destination *clone = inDestination->clone(); // clone it > destinations.push_back(clone); // and save the clone > > return clone; > } >
Well don't see anything obvious other than some missing NULL checks and not using dynamic_cast. If you can provide a complete sample or CPPUnit test we can look into it further. Have you tried building a release binary with debug symbols enabled so you can get a stack trace? Regards -- Tim Bish Open Source Integration: http://fusesource.com Follow me on Twitter: http://twitter.com/tabish121 My Blog: http://timbish.blogspot.com/