summaryrefslogtreecommitdiff
path: root/www/apache-jserv/files/patch-af
diff options
context:
space:
mode:
Diffstat (limited to 'www/apache-jserv/files/patch-af')
-rw-r--r--www/apache-jserv/files/patch-af30
1 files changed, 30 insertions, 0 deletions
diff --git a/www/apache-jserv/files/patch-af b/www/apache-jserv/files/patch-af
new file mode 100644
index 000000000000..6e055125da78
--- /dev/null
+++ b/www/apache-jserv/files/patch-af
@@ -0,0 +1,30 @@
+--- src/java/org/apache/java/lang/AdaptiveClassLoader.java.orig Tue Feb 8 18:37:01 2000
++++ src/java/org/apache/java/lang/AdaptiveClassLoader.java Tue Feb 8 20:33:18 2000
+@@ -661,7 +661,18 @@
+ ZipEntry entry = zipfile.getEntry(name);
+
+ if (entry != null) {
+- return zipfile.getInputStream(entry);
++ InputStream stream = zipfile.getInputStream(entry);
++ byte data[] = new byte[(int)entry.getSize()];
++ for(int i = 0 ; i < data.length ;) {
++ int size = stream.read(data, i, data.length - i);
++ if(size < 0) {
++ stream.close();
++ return null;
++ }
++ i += size;
++ }
++ stream.close();
++ return new ByteArrayInputStream(data);;
+ } else {
+ return null;
+ }
+@@ -671,6 +682,7 @@
+ if ( zipfile != null ) {
+ try {
+ zipfile.close();
++ zipfile = null;
+ } catch ( IOException ignored ) {
+ }
+ }