[prev in list] [next in list] [prev in thread] [next in thread]
List: axis-dev
Subject: [jira] [Created] (AXIS2-5078) Axis takes 100% CPU, infinite loop in
From: "Jonathan Ducharme (JIRA)" <jira () apache ! org>
Date: 2011-06-23 18:29:47
Message-ID: 1828078863.34145.1308853787404.JavaMail.tomcat () hel ! zones ! apache ! org
[Download RAW message or body]
Axis takes 100% CPU, infinite loop in the QueryStringParser
-----------------------------------------------------------
Key: AXIS2-5078
URL: https://issues.apache.org/jira/browse/AXIS2-5078
Project: Axis2
Issue Type: Bug
Components: kernel
Affects Versions: 1.5.5
Environment: Mac, Linux
Reporter: Jonathan Ducharme
Hi,
My problem is basically https://issues.apache.org/jira/browse/AXIS2-4736, but since \
it was closed without the step to reproduce, I've open a new issue, and will give you \
the code I made to test it.
Yes it's a malformed URL, but I think it's still an issue.
public static void main( String[] args ) {
QueryStringParser parser = new QueryStringParser("&gsdfgfds");
parser.search( new ArrayList<String>() );
System.out.println("done");
}
That being said, what I did is change the next() method by adding a check on the idx:
public boolean next() {
int len = queryString.length();
if (paramEnd == len) {
return false;
}
paramBegin = paramEnd == 0 ? 0 : paramEnd+1;
int idx = queryString.indexOf('&', paramBegin);
if(idx == 0) {
return false;
}
paramEnd = idx == -1 ? len : idx;
idx = queryString.indexOf('=', paramBegin);
paramNameEnd = idx == -1 || idx > paramEnd ? paramEnd : idx;
paramName = null;
paramValue = null;
return true;
}
For our current needs it work, might not be the best solution, but for what we had to \
do it worked pretty well. This also pass the QueryStringParserTest that axis has.
--
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-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic