[ https://issues.apache.org/activemq/browse/AMQ-824?page=all ]
james strachan reassigned AMQ-824: ---------------------------------- Assignee: Nathan Mittler > Missing NULL pointer check in MessageConsumer::autoAcknowledge > --------------------------------------------------------------- > > Key: AMQ-824 > URL: https://issues.apache.org/activemq/browse/AMQ-824 > Project: ActiveMQ > Issue Type: Bug > Components: CMS (C++ client) > Affects Versions: incubation > Environment: RHEL ES 4/32bit > Reporter: Radek Sedmak > Assigned To: Nathan Mittler > Original Estimate: 10 minutes > Remaining Estimate: 10 minutes > > When you call consumer->receive() on empty queue receive method returns NULL > message but before return MessageConsumer::autoAcknowledge method is invoked. > This method doesn't check message against NULL, this cause coredump is > message is NULL. > Patch: > p<IMessage> MessageConsumer::autoAcknowledge(p<IMessage> message) > { > try > { > if ( message != NULL ) { // <------ Check NULL here !!!!! > // Is the message an ActiveMQMessage? (throws bad_cast otherwise) > p<ActiveMQMessage> activeMessage = p_dyncast<ActiveMQMessage> > (message) ; > // Register the handler for client acknowledgment > activeMessage->setAcknowledger( smartify(this) ) ; > if( acknowledgementMode != ClientAckMode ) > doAcknowledge(activeMessage) ; > } > } > catch( bad_cast& bc ) > { > // ignore > } > return message ; -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/activemq/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira