[Pkg] The Trunk: Files-eem.132.mcz

commits at source.squeak.org commits at source.squeak.org
Mon Apr 21 22:11:09 UTC 2014


Eliot Miranda uploaded a new version of Files to project The Trunk:
http://source.squeak.org/trunk/Files-eem.132.mcz

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

Name: Files-eem.132
Author: eem
Time: 21 April 2014, 3:07:09.85 pm
UUID: 4ae7fd40-36ae-4c78-9481-eede8bd586cd
Ancestors: Files-cmm.131

Fix FileDirectory on: asnd FileDirectory class on: for "..", and
hence fix the VMMakerTool for paths such as '../platforms'.

=============== Diff against Files-cmm.131 ===============

Item was changed:
  ----- Method: FileDirectory class>>on: (in category 'instance creation') -----
  on: pathString
  	"Return a new file directory for the given path, of the appropriate FileDirectory subclass for the current OS platform."
  
  	| pathName |
  	DirectoryClass ifNil: [self setDefaultDirectoryClass].
  	"If path ends with a delimiter (: or /) then remove it"
+ 	pathName := pathString.
+ 	(pathName at: pathName size ifAbsent: nil) = self pathNameDelimiter ifTrue:
+ 		[pathName := pathName allButLast].
+ 	DirectoryClass parentDirectoryNickname ifNotNil:
+ 		[:parentName|
+ 		(pathName beginsWith: parentName) ifTrue:
+ 			[pathName = parentName ifTrue:
+ 				[^self default containingDirectory].
+ 			 (pathName at: parentName size + 1 ifAbsent: nil) = self pathNameDelimiter ifTrue:
+ 				[^self default containingDirectory on: (pathName allButFirst: parentName size + 1)]]].
+ 	^DirectoryClass new setPathName: pathName!
- 	((pathName := pathString) endsWith: self pathNameDelimiter asString) ifTrue: [
- 		pathName := pathName copyFrom: 1 to: pathName size - 1].
- 	^ DirectoryClass new setPathName: pathName
- !

Item was changed:
  ----- Method: FileDirectory>>on: (in category 'path access') -----
+ on: path
- on: fullPath
  	"Return another instance"
  
+ 	^ self class on: ((path at: 1 ifAbsent: nil) = self pathNameDelimiter
+ 						ifTrue: [path]
+ 						ifFalse: [pathName asString, (String with: self pathNameDelimiter), path])!
- 	^ self class on: fullPath!



More information about the Packages mailing list