--- a/ZipArchive.st Fri Jan 08 14:00:17 1999 +0100
+++ b/ZipArchive.st Sun Jan 10 18:28:09 1999 +0100
@@ -1168,7 +1168,7 @@
extract:fileName
"extract a filename entry as a byteArray"
- |zmemb rawContents data|
+ |zmemb rawContents data oldEntry|
recentlyExtractedEntries isNil ifTrue:[
recentlyExtractedEntries := OrderedCollection new
@@ -1177,7 +1177,10 @@
entry name = fileName ifTrue:[
recentlyExtractedEntries removeIndex:index.
recentlyExtractedEntries addLast:entry.
- ^ entry data
+ data := entry data.
+ data notNil ifTrue:[
+ ^ data
+ ]
]
].
@@ -1194,10 +1197,13 @@
method:(zmemb compression_method)
size:(zmemb uncompressed_size).
- zmemb data:data.
- recentlyExtractedEntries addLast:zmemb.
- [recentlyExtractedEntries size > 5] whileTrue:[
- recentlyExtractedEntries removeFirst
+ data size < (32*1024) ifTrue:[
+"/ zmemb data:data.
+ recentlyExtractedEntries addLast:zmemb.
+ [recentlyExtractedEntries size > 5] whileTrue:[
+ oldEntry := recentlyExtractedEntries removeFirst.
+ oldEntry data:nil.
+ ].
].
^ data.
@@ -1205,7 +1211,7 @@
(ZipArchive oldFileNamed:'/usr/lib/java/lib/classes.zip') extract:'java/io/UTFDataFormatException.class'
"
- "Modified: / 9.4.1998 / 13:14:35 / cg"
+ "Modified: / 10.1.1999 / 17:43:25 / cg"
!
members
@@ -1649,6 +1655,6 @@
!ZipArchive class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic2/ZipArchive.st,v 1.21 1999-01-07 14:45:44 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic2/ZipArchive.st,v 1.22 1999-01-10 17:28:09 cg Exp $'
! !
ZipArchive initialize!