A new version of Files was added to project The Inbox:
http://source.squeak.org/inbox/Files-kfr.120.mcz==================== Summary ====================
Name: Files-kfr.120
Author: kfr
Time: 12 November 2012, 6:23:28.531 pm
UUID: 4a518133-203f-bd43-9fce-78b8dcfb337d
Ancestors: Files-cmm.119
Fix for test failure on Windows
=============== Diff against Files-cmm.119 ===============
Item was added:
+ ----- Method: DosFileDirectory>>relativeNameIfAbsoluteFor: (in category 'path access') -----
+ relativeNameIfAbsoluteFor: aFileName
+ "Answer either the relative name for aFileName, if aFileName names a file in me or
+ subdirectories, or aFileName's absolute path if it isn't in me or subdirectories.
+ P.S. Ths is what I'd expect relativeNameFor: to do, but it is taken and means
+ exactly the opposite, i.e. the absolute path for a relative name."
+ | fullNameSize fullName fileNameSize |
+ (aFileName isEmpty or: [aFileName first ~= self driveName first]) ifTrue:
+ [self error: 'this method expects an absolute filename'].
+ fullNameSize := (fullName := self fullName) size.
+ fileNameSize := aFileName size.
+ ^(aFileName beginsWith: fullName)
+ ifTrue: [(fileNameSize = fullNameSize
+ or: [fileNameSize - 1 = fullNameSize
+ and: [(aFileName at: fileNameSize) = self pathNameDelimiter]])
+ ifTrue: [self class currentDirectoryNickname]
+ ifFalse: [aFileName copyFrom: fullNameSize + 2 to: fileNameSize]]
+ ifFalse: [aFileName]
+
+ "SourceFiles asArray collect: [:sf| FileDirectory default relativeNameIfAbsoluteFor: sf fullName]"
+ "FileDirectory default relativeNameIfAbsoluteFor: FileDirectory default fullName" "should be dot"
+ "FileDirectory default relativeNameIfAbsoluteFor: FileDirectory default fullName, FileDirectory default slash" "should also be dot"!