Helen Huang created AMQCPP-455:
----------------------------------
Summary: Access violation in CMS when creating a new connection
Key: AMQCPP-455
URL: https://issues.apache.org/jira/browse/AMQCPP-455
Project: ActiveMQ C++ Client
Issue Type: Bug
Components: CMS Impl
Affects Versions: 3.5.0
Environment: windows xp, activemq 5.3
Reporter: Helen Huang
Assignee: Timothy Bish
Priority: Critical
Fix For: 3.5.0
Caught an access violation in CMS. The iterator seems to be out of bound. The
following is the call stack:
activemq-cppud.dll!std::_Tree<std::_Tmap_traits<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>
>,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char>
> const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> >
> >,0> >::const_iterator::operator++() Line 264
activemq-cppud.dll!std::_Tree<std::_Tmap_traits<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>
>,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char>
> const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> >
> >,0>
>::insert<std::_Tree<std::_Tmap_traits<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>
>,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char>
> const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> >
> >,0>
>::const_iterator>(std::_Tree<std::_Tmap_traits<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>
>,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char>
> const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> >
> >,0> >::const_iterator _First=(<Bad Ptr>,<Bad Ptr>),
std::_Tree<std::_Tmap_traits<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>
>,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char>
> const ,std::basic_string<char,std::char_traits<char>,std::allocator<char> >
> >,0> >::const_iterator _Last=(<Bad Ptr>,<Bad Ptr>)) Line 742 + 0xa bytes
activemq-cppud.dll!decaf::util::StlMap<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char>
> > >::copy(const
decaf::util::StlMap<std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::basic_string<char,std::char_traits<char>,std::allocator<char>
>,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char>
> > > & source={...}) Line 701
activemq-cppud.dll!decaf::util::Properties::clone() Line 280
activemq-cppud.dll!activemq::core::ActiveMQConnectionFactory::doCreateConnection(const
decaf::net::URI & uri={...}, const
std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
username="", const
std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
password="", const
std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
clientId="") Line 289 + 0x1f bytes
activemq-cppud.dll!activemq::core::ActiveMQConnectionFactory::createConnection()
Line 245
activemq-cppud.dll!activemq::cmsutil::CmsAccessor::createConnection() Line 58
+ 0x32 bytes
activemq-cppud.dll!activemq::cmsutil::CmsTemplate::getConnection() Line 258 +
0xd bytes
activemq-cppud.dll!activemq::cmsutil::CmsTemplate::takeSession() Line 283
activemq-cppud.dll!activemq::cmsutil::CmsTemplate::execute(activemq::cmsutil::SessionCallback
* action=0x02abfac4) Line 433 + 0x8 bytes
activemq-cppud.dll!activemq::cmsutil::CmsTemplate::execute(activemq::cmsutil::ProducerCallback
* action=0x02abfb3c) Line 458
activemq-cppud.dll!activemq::cmsutil::CmsTemplate::send(activemq::cmsutil::MessageCreator
* messageCreator=0x02abfc48) Line 539
CMSMessageHandler-MultiTest.exe!cmstemplate::Sender::SendMessage(std::basic_string<char,std::char_traits<char>,std::allocator<char>
> &
message="25040;CTBZMRWGBGIUAHHKNRRBBDZUQYMTZFTPYUOCLPLUTHNSBVFZFDTIMKBUIYAQBYBINKJLHQWUNEOUBILUSFBOVSHAPJICGMQYXALGF",
cmstemplate::ErrorCode & errorCode=CMS_SUCCESS) Line 65 + 0x2d bytes
CMSMessageHandler-MultiTest.exe!cmstemplate::TestSenderAndReceiver::run() Line
91
activemq-cppud.dll!decaf::lang::Thread::run() Line 143
activemq-cppud.dll!`anonymous namespace'::runCallback(void * arg=0x00beeb68)
Line 262 + 0x11 bytes
activemq-cppud.dll!`anonymous namespace'::threadEntryMethod(void *
arg=0x00beeb68) Line 250 + 0x15 bytes
msvcr80d.dll!_callthreadstartex() Line 348 + 0xf bytes
msvcr80d.dll!_threadstartex(void * ptd=0x00bf0ee8) Line 331
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira