Author: fhanik
Date: Tue May 29 15:04:24 2007
New Revision: 542671
URL: http://svn.apache.org/viewvc?view=rev&rev=542671
Log:
question mark has to be a global variable
Modified:
tomcat/trunk/java/org/apache/coyote/http11/InternalNioInputBuffer.java
Modified: tomcat/trunk/java/org/apache/coyote/http11/InternalNioInputBuffer.java
URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/InternalNioInputBuffer.java?view=diff&rev=542671&r1=542670&r2=542671
==============================================================================
--- tomcat/trunk/java/org/apache/coyote/http11/InternalNioInputBuffer.java
(original)
+++ tomcat/trunk/java/org/apache/coyote/http11/InternalNioInputBuffer.java Tue
May 29 15:04:24 2007
@@ -75,6 +75,7 @@
parsingRequestLinePhase = 0;
parsingRequestLineEol = false;
parsingRequestLineStart = 0;
+ parsingRequestLineQPos = -1;
headerParsePos = HeaderParsePosition.HEADER_START;
headerData.recycle();
swallowInput = true;
@@ -121,6 +122,7 @@
protected int parsingRequestLinePhase = 0;
protected boolean parsingRequestLineEol = false;
protected int parsingRequestLineStart = 0;
+ protected int parsingRequestLineQPos = -1;
protected HeaderParsePosition headerParsePos;
@@ -314,6 +316,7 @@
parsingRequestLinePhase = 0;
parsingRequestLineEol = false;
parsingRequestLineStart = 0;
+ parsingRequestLineQPos = -1;
headerData.recycle();
swallowInput = true;
@@ -358,6 +361,7 @@
parsingRequestLinePhase = 0;
parsingRequestLineEol = false;
parsingRequestLineStart = 0;
+ parsingRequestLineQPos = -1;
headerData.recycle();
swallowInput = true;
@@ -464,7 +468,6 @@
// Mark the current buffer position
int end = 0;
- int questionPos = -1;
//
// Reading the URI
//
@@ -485,16 +488,16 @@
space = true;
end = pos;
} else if ((buf[pos] == Constants.QUESTION)
- && (questionPos == -1)) {
- questionPos = pos;
+ && (parsingRequestLineQPos == -1)) {
+ parsingRequestLineQPos = pos;
}
pos++;
}
request.unparsedURI().setBytes(buf, parsingRequestLineStart, end -
parsingRequestLineStart);
- if (questionPos >= 0) {
- request.queryString().setBytes(buf, questionPos + 1,
- end - questionPos - 1);
- request.requestURI().setBytes(buf, parsingRequestLineStart,
questionPos - parsingRequestLineStart);
+ if (parsingRequestLineQPos >= 0) {
+ request.queryString().setBytes(buf, parsingRequestLineQPos +
1,
+ end - parsingRequestLineQPos -
1);
+ request.requestURI().setBytes(buf, parsingRequestLineStart,
parsingRequestLineQPos - parsingRequestLineStart);
} else {
request.requestURI().setBytes(buf, parsingRequestLineStart,
end - parsingRequestLineStart);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]