Client crash when receiving message with empty string property from java
------------------------------------------------------------------------

                 Key: AMQCPP-149
                 URL: https://issues.apache.org/activemq/browse/AMQCPP-149
             Project: ActiveMQ C++ Client
          Issue Type: Bug
          Components: Openwire
    Affects Versions: 2.1, 2.0.1
            Reporter: Marco Renz
            Assignee: Nathan Mittler


Send message from a java client with a string property whereas the value is the 
empty string.
Try to receive this message with a C++ client.
Result: C++ client crashs.

Reason:

In OpenwireStringSupport::readString a std::vector is initialized to the string 
length which is 0. Then DataInputStream::readFully is called with the vector as 
argument. But this method tries to get the element at index 0 of the vector 
without any check. But there is no element in the vector at all...

Proposed solution:

DataInputStream::readFully  should check the size of the vector before 
accessing elements.

Further info:

If the message is send from C++ client then there is no problem. Maybe /0 is 
used so that the vector has at least a size of 1.
I got that probelm with 2.0.1. I did not tried 2.1 but checked the code.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to