Matthias Gerber created AXIS2-5300:
--------------------------------------

             Summary: org.apache.axis2.json.AbstractJSONOMBuilder hangs when 
JSAO has wrong format
                 Key: AXIS2-5300
                 URL: https://issues.apache.org/jira/browse/AXIS2-5300
             Project: Axis2
          Issue Type: Bug
          Components: json
    Affects Versions: 1.6.2
         Environment: Apache tomcat 7.0.25
Ubuntu 64Bit 11.10
            Reporter: Matthias Gerber


org.apache.axis2.json.AbstractJSONOMBuilder hangs when JSAO has wrong format:

Code loping through reader at line 119 and 135 to get localName should check 
for end of stream. 
Otherwise the code cycles for ever if the string to parse does not contain a  
":"

Code as it is at the moment:

118            char temp = (char)reader.read();
119            while (temp != ':') {
120               if (temp != ' ' && temp != '{' && temp != '\n' && temp != 
'\r' && temp != '\t') {
121                    localName += temp;
122                }
123                temp = (char)reader.read();
124            }


Code as it should be (or something like that):
                  int t = reader.read();
118            char temp = (char)t;
119            while (temp != ':' && t >= 0) {
120               if (temp != ' ' && temp != '{' && temp != '\n' && temp != 
'\r' && temp != '\t') {
121                    localName += temp;
122                }
                     t =  reader.read();
123                temp =  (char)t;
124            }

And maybe some error handling if end of stream is reached. 


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to