You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by wa...@apache.org on 2007/08/01 11:36:39 UTC
svn commit: r561742 -
/felix/trunk/http.jetty/src/main/java/org/apache/felix/http/jetty/OsgiResourceHandler.java
Author: walkerr
Date: Wed Aug 1 02:36:38 2007
New Revision: 561742
URL: http://svn.apache.org/viewvc?view=rev&rev=561742
Log:
Ensure URL stream is closed once bytes have been read and copied to response (FELIX-330).
Modified:
felix/trunk/http.jetty/src/main/java/org/apache/felix/http/jetty/OsgiResourceHandler.java
Modified: felix/trunk/http.jetty/src/main/java/org/apache/felix/http/jetty/OsgiResourceHandler.java
URL: http://svn.apache.org/viewvc/felix/trunk/http.jetty/src/main/java/org/apache/felix/http/jetty/OsgiResourceHandler.java?view=diff&rev=561742&r1=561741&r2=561742
==============================================================================
--- felix/trunk/http.jetty/src/main/java/org/apache/felix/http/jetty/OsgiResourceHandler.java (original)
+++ felix/trunk/http.jetty/src/main/java/org/apache/felix/http/jetty/OsgiResourceHandler.java Wed Aug 1 02:36:38 2007
@@ -175,25 +175,37 @@
throws
IOException
{
- OutputStream os = response.getOutputStream();
- InputStream is = url.openStream();
- int len = 0;
- byte[] buf = new byte[1024];
- int n = 0;
-
- while ((n = is.read(buf, 0, buf.length)) >= 0)
- {
- os.write(buf, 0, n);
- len += n;
- }
+ OutputStream os = null;
+ InputStream is = null;
- try
- {
- response.setContentLength(len);
- }
- catch (IllegalStateException ex)
+ try
{
- System.err.println("OsgiResourceHandler: " + ex);
+ os = response.getOutputStream();
+ is = url.openStream();
+
+ int len = 0;
+ byte[] buf = new byte[1024];
+ int n = 0;
+
+ while ((n = is.read(buf, 0, buf.length)) >= 0)
+ {
+ os.write(buf, 0, n);
+ len += n;
+ }
+
+ try
+ {
+ response.setContentLength(len);
+ }
+ catch (IllegalStateException ex)
+ {
+ System.err.println("OsgiResourceHandler: " + ex);
+ }
}
+ finally
+ {
+ if (is != null) is.close();
+ if (os != null) os.close();
+ }
}
}