DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=26988>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=26988

Error during POST via CGI

           Summary: Error during POST via CGI
           Product: Tomcat 5
           Version: 5.0.18
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: Critical
          Priority: Other
         Component: Servlets:CGI
        AssignedTo: [EMAIL PROTECTED]
        ReportedBy: [EMAIL PROTECTED]
                CC: [EMAIL PROTECTED]


The CGIServlet.java is erroneously adding 2 line feeds to the stdin stream of 
of a CGI process. The problem happens in the getPostInput() method. Even if no 
request parameters are present it will return a line feed. The calling method 
checks for null, but based on the getPostInput method this can never occur. 
Adding the following code fixes the problem.

protected String getPostInput(Hashtable params) {
...
return qs.length() > 0 ? qs.append(lineSeparator).append(postInput).toString
() : null;
}

This only adds a line separator if parameters exist. I've also looked at the 
ouput string which is formated as follows (example using 2 params):

"param1=value1&parma2=value2&
param1=value1
param2=value2

"

Is this the expected output format? The problematic code also exists for 
version 5.0.19.

Kevin

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to