[squeak-dev] The Inbox: Compression-dtl.47.mcz

commits at source.squeak.org commits at source.squeak.org
Sat Jan 24 00:31:45 UTC 2015


David T. Lewis uploaded a new version of Compression to project The Inbox:
http://source.squeak.org/inbox/Compression-dtl.47.mcz

==================== Summary ====================

Name: Compression-dtl.47
Author: dtl
Time: 23 January 2015, 7:31:41.423 pm
UUID: 4694513c-b90e-4953-accc-31b7d6c09432
Ancestors: Compression-bf.46

ZipDirectoryMember>>localFileName should use host file system semantics to test for file directory path, it should not assume that unix conventions apply.

This hopefully fixes the problem identified by Tim Oesterreich on squeak-dev: [BUG] ERROR: File not in Directory: [...] while trying to create a SAR-archive on Windows

=============== Diff against Compression-bf.46 ===============

Item was changed:
  ----- Method: ZipDirectoryMember>>localFileName: (in category 'accessing') -----
  localFileName: aString
+ 	| dir entry parent fsPath |
- 	| dir entry parent |
  	super localFileName: aString.
  	fileName last = $/ ifFalse: [ fileName := fileName, '/' ].
  	parent := FileDirectory default.
+ 	aString last = parent pathNameDelimiter
+ 		ifTrue: [fsPath := parent fullNameFor: aString]
+ 		ifFalse: [fsPath := parent fullNameFor: aString, parent slash].
+ 	(parent directoryExists: fsPath) ifTrue: [
+ 		dir := FileDirectory on: fsPath.
- 	(parent directoryExists: fileName) ifTrue: [
- 		dir := FileDirectory on: (parent fullNameFor: fileName).
  		entry := dir directoryEntry.
  		self setLastModFileDateTimeFrom: entry modificationTime
  	]
  !



More information about the Squeak-dev mailing list