JSONOMBuilder drives system to an indefinite loop
-------------------------------------------------

                 Key: AXIS2-5125
                 URL: https://issues.apache.org/jira/browse/AXIS2-5125
             Project: Axis2
          Issue Type: Bug
          Components: json
    Affects Versions: 1.5.5
         Environment: Mac OS X 10.6.8, JVM 1.6.0_26
            Reporter: Hanifi Gunes
            Priority: Critical


processDocument method in JSONOMBuilder has the following loop:

char temp = inputStream.read();
while (temp != ':') {
...             
}

This will lead to an indefinite loop in case a non-json or empty json {} 
payload is posted to the servlet. Actually any payload without colon character 
':' should reproduce the same problem.

I fixed it by changing the variable type temp into int and checking if the 
stream has more elements as a guard condition.

int temp = inputStream.read();
            while (temp > -1 && temp != ':') {
                if (temp != ' ' && temp != '{') {
                    localName += (char)temp;
                }
                temp = inputStream.read();
            }



--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscr...@axis.apache.org
For additional commands, e-mail: java-dev-h...@axis.apache.org

Reply via email to