cocoon-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From vgritse...@apache.org
Subject cvs commit: xml-cocoon2/src/java/org/apache/cocoon/components/request/multipart MultipartParser.java
Date Sat, 21 Sep 2002 16:29:34 GMT
vgritsenko    2002/09/21 09:29:34

  Modified:    src/java/org/apache/cocoon/components/request/multipart
                        MultipartParser.java
  Log:
  fix cross-platform upload issues
  
  Revision  Changes    Path
  1.4       +8 -14     xml-cocoon2/src/java/org/apache/cocoon/components/request/multipart/MultipartParser.java
  
  Index: MultipartParser.java
  ===================================================================
  RCS file: /home/cvs/xml-cocoon2/src/java/org/apache/cocoon/components/request/multipart/MultipartParser.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- MultipartParser.java	23 May 2002 12:01:08 -0000	1.3
  +++ MultipartParser.java	21 Sep 2002 16:29:33 -0000	1.4
  @@ -179,9 +179,7 @@
               throws IOException, MultipartException {
   
           Hashtable headers = new Hashtable();
  -
           headers = readHeaders(ts);
  -
           try {
               if (headers.containsKey("filename")) {
   		        if (!"".equals(headers.get("filename"))) {
  @@ -233,11 +231,14 @@
           if (!saveUploadedFilesToDisk) {
               out = new ByteArrayOutputStream();
           } else {
  -            String filePath = uploadDirectory.getPath() + File.separator;
  -	
  -            String fileName =
  -                    new File((String) headers.get("filename")).getName();
  +            String fileName = (String) headers.get("filename");
  +            if(File.separatorChar == '\\')
  +                fileName = fileName.replace('/','\\');
  +            else
  +                fileName = fileName.replace('\\','/');
   
  +            String filePath = uploadDirectory.getPath() + File.separator;
  +            fileName = new File(fileName).getName();
               file = new File(filePath + fileName);
   
               if (file.exists()) {
  @@ -259,15 +260,12 @@
           }
   
           int read = 0;
  -
           while (in.getState() == TokenStream.STATE_READING) {    // read data
               read = in.read(buf);
  -
               out.write(buf, 0, read);
           }
   
           out.close();
  -
           if (file == null) {
               byte[] bytes = ((ByteArrayOutputStream) out).toByteArray();
   
  @@ -295,7 +293,6 @@
   
           while (in.getState() == TokenStream.STATE_READING) {
               int read = in.read(buf);
  -
               value.append(new String(buf, 0, read, this.characterEncoding));
           }
   
  @@ -304,7 +301,6 @@
   
           if (v == null) {
               v = new Vector();
  -
               put(field, v);
           }
   
  @@ -355,7 +351,6 @@
       private String getBoundary(String hdr) {
   
           int start = hdr.toLowerCase().indexOf("boundary=");
  -
           if (start > -1) {
               return "--" + hdr.substring(start + 9);
           } else {
  @@ -379,7 +374,6 @@
   
           while ((b != -1) && (b != '\r')) {
               out.append((char) b);
  -
               b = in.read();
           }
   
  
  
  

----------------------------------------------------------------------
In case of troubles, e-mail:     webmaster@xml.apache.org
To unsubscribe, e-mail:          cocoon-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: cocoon-cvs-help@xml.apache.org


Mime
View raw message