Return-Path: X-Original-To: apmail-activemq-dev-archive@www.apache.org Delivered-To: apmail-activemq-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 08A25F396 for ; Tue, 7 May 2013 21:23:16 +0000 (UTC) Received: (qmail 48576 invoked by uid 500); 7 May 2013 21:23:15 -0000 Delivered-To: apmail-activemq-dev-archive@activemq.apache.org Received: (qmail 48513 invoked by uid 500); 7 May 2013 21:23:15 -0000 Mailing-List: contact dev-help@activemq.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@activemq.apache.org Delivered-To: mailing list dev@activemq.apache.org Received: (qmail 48504 invoked by uid 99); 7 May 2013 21:23:15 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 07 May 2013 21:23:15 +0000 Date: Tue, 7 May 2013 21:23:15 +0000 (UTC) From: "Martin Lichtin (JIRA)" To: dev@activemq.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Created] (AMQCPP-481) NullPointerException while handling broker exception MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 Martin Lichtin created AMQCPP-481: ------------------------------------- Summary: NullPointerException while handling broker exception Key: AMQCPP-481 URL: https://issues.apache.org/jira/browse/AMQCPP-481 Project: ActiveMQ C++ Client Issue Type: Bug Affects Versions: 3.5.0 Reporter: Martin Lichtin Assignee: Timothy Bish (Running with a modified library that aborts in case of a NullPointerException.) (gdb) bt #0 0x000000397b030265 in raise () from /lib64/libc.so.6 #1 0x000000397b031d10 in abort () from /lib64/libc.so.6 #2 0x00002aebc6308b48 in decaf::lang::Pointer::operator-> (this=0x15b32da8) at ./decaf/lang/Pointer.h:264 #3 0x00002aebc63065ad in activemq::commands::BrokerError::createExceptionObject (this=0x15b32d50) at activemq/commands/BrokerError.cpp:128 #4 0x00002aebc634956e in activemq::core::ActiveMQConnection::syncRequest (this=0x2aaaac037600, command=..., timeout=0) at activemq/core/ActiveMQConnection.cpp:1251 #5 0x00002aebc634b55b in activemq::core::ActiveMQConnection::asyncRequest (this=0x2aaaac037600, command=..., onComplete=0x0) at activemq/core/ActiveMQConnection.cpp:1275 #6 0x00002aebc6431de4 in activemq::core::kernels::ActiveMQSessionKernel::send (this=0x2aaaac03daa0, producer=0x2aaaac040800, destination=..., message=0x2aaaac0574b0, deliveryMode=0, priority=4, timeToLive=0, producerWindow=0x0, sendTimeout=0, onComplete=0x0) at activemq/core/kernels/ActiveMQSessionKernel.cpp:985 #7 0x00002aebc64254e8 in activemq::core::kernels::ActiveMQProducerKernel::send (this=0x2aaaac040800, destination=0x2aaaac040068, message=0x2aaaac0574b0, deliveryMode=0, priority=4, timeToLive=0, onComplete=0x0) at activemq/core/kernels/ActiveMQProducerKernel.cpp:269 #8 0x00002aebc6423c99 in activemq::core::kernels::ActiveMQProducerKernel::send (this=0x2aaaac040800, message=0x2aaaac0574b0) at activemq/core/kernels/ActiveMQProducerKernel.cpp:139 #9 0x00002aebc63cc270 in activemq::core::ActiveMQProducer::send (this=0x2aaaac040de0, message=0x2aaaac0574b0) at activemq/core/ActiveMQProducer.cpp:62 etc... (gdb) frame 3 #3 0x00002aebc63065ad in activemq::commands::BrokerError::createExceptionObject (this=0x15b32d50) at activemq/commands/BrokerError.cpp:128 128 cause = new cms::CMSException(this->exCause->getMessage()); (gdb) p *this $10 = { = { = { = { = { = { _vptr.MarshalAware = 0x2aebc6c88230}, }, }, }, responseRequired = false, commandId = 0}, message = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x15b2f528 "malformed input around byte 0"}}, exceptionClass = {static npos = 18446744073709551615, _M_dataplus = {> = {<__gnu_cxx::new_allocator> = {}, }, _M_p = 0x15b2f4e8 "java.io.UTFDataFormatException"}}, stackTraceElements = {, std::allocator > >> = { _M_impl = { >> = {<__gnu_cxx::new_allocator >> = {}, }, _M_start = 0x15b33dc0, _M_finish = 0x15b34120, _M_end_of_storage = 0x15b34120}}, }, cause = { = {_vptr.AtomicRefCounter = 0x2aebc6c88490, counter = 0x15b33cd0}, value = 0x0, onDelete = 0x2aebc6307434 ::onDeleteFunc(activemq::commands::BrokerError*)>}, exCause = { = {_vptr.AtomicRefCounter = 0x2aebc6c884d0, counter = 0x15a9ec70}, value = 0x0, onDelete = 0x2aebc6307348 ::onDeleteFunc(decaf::lang::Exception*)>}} (gdb) l 123 cause = new cms::UnsupportedOperationException(this->message); 124 } else { 125 if (exCause != NULL) { 126 cause = new cms::CMSException(this->message); 127 } else { 128 cause = new cms::CMSException(this->exCause->getMessage()); 129 } 130 } 131 132 // Wrap in a Decaf exception to carry the pointer until it can be The check on line 125 seems wrong. It should be ==, not? -- 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