Of course I should have written UnixFileDirectory default directoryExists: UnixFileDirectory default fullName, '/.'
But same problem applies... On Thu, Dec 15, 2011 at 2:19 PM, Eliot Miranda <eliot.mira...@gmail.com>wrote: > Hi All, > > just noticed that > > UnixFileDirectory default directoryExists: UnixFileDirectory > default asString, '/.' > > answers false, since directoryNames excludes '.' and '..' (justifiable, > and changing this might break all manner of things). i.e. > > FileDirectory>directoryExists: filenameOrPath > "Answer true if a directory of the given name exists. The given name may > be either a full path name or a local directory within this directory." > "FileDirectory default directoryExists: FileDirectory default pathName" > > | fName dir | > DirectoryClass splitName: filenameOrPath to: > [:filePath :name | > fName := name. > filePath isEmpty > ifTrue: [dir := self] > ifFalse: [dir := self directoryNamed: filePath]]. > > ^dir exists and: [ > self isCaseSensitive > ifTrue:[dir directoryNames includes: fName] > ifFalse:[dir directoryNames anySatisfy: [:name| name sameAs: fName]]]. > > > So how about > > FileDirectory class methods for accessing > currentDirectoryNickname > ^'.' > > FileDirectory>directoryExists: filenameOrPath > "Answer true if a directory of the given name exists. The given name may > be either a full path name or a local directory within this directory." > "FileDirectory default directoryExists: FileDirectory default pathName" > > | fName dir | > DirectoryClass splitName: filenameOrPath to: > [:filePath :name | > fName := name. > filePath isEmpty > ifTrue: [dir := self] > ifFalse: [dir := self directoryNamed: filePath]]. > > ^dir exists > and: [fName = self class currentDirectoryNickname > or: [self isCaseSensitive > ifTrue:[dir directoryNames includes: fName] > ifFalse:[dir directoryNames anySatisfy: [:name| name sameAs: fName]]]] > > -- > best, > Eliot > > -- best, Eliot