Author: antoine
Date: Sat Feb 10 13:59:00 2007
New Revision: 505776

URL: http://svn.apache.org/viewvc?view=rev&rev=505776
Log:
closing streams properly in getMethod(String path, File file), Bugzilla 41574

Modified:
    jakarta/slide/trunk/WHATSNEW
    
jakarta/slide/trunk/webdavclient/clientlib/src/java/org/apache/webdav/lib/WebdavResource.java

Modified: jakarta/slide/trunk/WHATSNEW
URL: 
http://svn.apache.org/viewvc/jakarta/slide/trunk/WHATSNEW?view=diff&rev=505776&r1=505775&r2=505776
==============================================================================
--- jakarta/slide/trunk/WHATSNEW (original)
+++ jakarta/slide/trunk/WHATSNEW Sat Feb 10 13:59:00 2007
@@ -1,4 +1,4 @@
-Changes from slide 2.1 to current SVN version
+       Changes from slide 2.1 to current SVN version
 =============================================
 
 Changes that could break older environments:
@@ -11,6 +11,9 @@
 
 * Unclosed FileInputStream in WebdavResource.putMethod
   Bugzilla 40835.
+
+* Potentially unclosed InputStream and FileOutputStream in 
WebdavResource.getMethod(String path, File file)
+  Bugzilla 41574. 
 
 Other changes:
 --------------

Modified: 
jakarta/slide/trunk/webdavclient/clientlib/src/java/org/apache/webdav/lib/WebdavResource.java
URL: 
http://svn.apache.org/viewvc/jakarta/slide/trunk/webdavclient/clientlib/src/java/org/apache/webdav/lib/WebdavResource.java?view=diff&rev=505776&r1=505775&r2=505776
==============================================================================
--- 
jakarta/slide/trunk/webdavclient/clientlib/src/java/org/apache/webdav/lib/WebdavResource.java
 (original)
+++ 
jakarta/slide/trunk/webdavclient/clientlib/src/java/org/apache/webdav/lib/WebdavResource.java
 Sat Feb 10 13:59:00 2007
@@ -2229,8 +2229,6 @@
      * Set the URL encoding flag for this http URL.
      *
      * @param encodeURLs true if it is encoded.
-     * @exception MalformedURLException
-     * @exception IOException
      *
      * @deprecated  No longer has any effect.
      */
@@ -2625,20 +2623,28 @@
         // get the file only if status is any kind of OK
         if (statusCode >= 200 && statusCode < 300) {
 
-            // Do a simple little loop to read the response back into the 
passed
-            // file parameter.
-            InputStream inStream = method.getResponseBodyAsStream();
-
-            FileOutputStream fos = new FileOutputStream(file);
-            byte buffer[] = new byte[65535];
-            int bytesRead;
-            while ((bytesRead = inStream.read(buffer)) >= 0) {
-                fos.write(buffer, 0, bytesRead);
-            }
-            inStream.close();
-            fos.close();
+            FileOutputStream fos = null;
+            InputStream inStream = null;
+            try {
+                // Do a simple little loop to read the response back into the 
passed
+                // file parameter.
+                inStream = method.getResponseBodyAsStream();
+
+                fos = new FileOutputStream(file);
+                byte buffer[] = new byte[65535];
+                int bytesRead;
+                while ((bytesRead = inStream.read(buffer)) >= 0) {
+                    fos.write(buffer, 0, bytesRead);
+                }
 
-            return true;
+                return true;
+
+            } finally {
+                if(fos != null)
+                    fos.close();
+                if(inStream != null)
+                    inStream.close();
+            }
 
         } else {
             return false;
@@ -4259,7 +4265,7 @@
      * @param path the server relative path of the resource to lock
      * @param owner The owner string.
      * @param timeout the timeout value.
-     * @param locktype, the scope of lock.
+     * @param lockType, the scope of lock.
      * @return true if the method is succeeded.
      * @exception HttpException
      * @exception IOException
@@ -4278,7 +4284,7 @@
      * @param path the server relative path of the resource to lock
      * @param owner The owner string.
      * @param timeout the timeout value.
-     * @param locktype, the scope of lock.
+     * @param lockType, the scope of lock.
      * @return true if the method is succeeded.
      * @exception HttpException
      * @exception IOException



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

Reply via email to