[BUG][OmniBrowser]DosFileDirectory(Object)>>error:

Hernan Tylim htylim at yahoo.com.ar
Tue Apr 27 20:47:40 UTC 2004


Hi Andreas,
I think that I already have the fix you are referring to in the image. It's
in update number 5806.

I might probably be wrong but I think the problem is that <FileDirectory
root fullNameFor: 'C:'> is returning: 'C#'.

The above result is making <FileDirectory root directoryNamed: 'C:'> to
complain even though <FileDirectory root directoryExists: 'C:'> returns true
and <FileDirectory root directoryNames> includes 'C:'.

Maybe I could implement a DosFileDirectory>>fullNameFor: that would allow
this kind of path?

Thanks.

Regards,
Hernán

> -----Original Message-----
> From: squeak-dev-bounces at lists.squeakfoundation.org
> [mailto:squeak-dev-bounces at lists.squeakfoundation.org]On Behalf Of
> Andreas Raab
> Sent: Tuesday, April 27, 2004 5:01 PM
> To: The general-purpose Squeak developers list
> Subject: Re: [BUG][OmniBrowser]DosFileDirectory(Object)>>error:
>
>
> The fix is here:
>
> http://lists.squeakfoundation.org/pipermail/squeak-dev/2004-March/
> 075180.html
>
> Cheers,
>   - Andreas
>
> ----- Original Message -----
> From: <htylim at yahoo.com.ar>
> To: <squeak-dev at lists.squeakfoundation.org>
> Sent: Tuesday, April 27, 2004 9:50 PM
> Subject: [BUG][OmniBrowser]DosFileDirectory(Object)>>error:
>
>
> > Hi Colin,
> > I was trying OmniBrowser in a 5878 image and when I opened the File
> > Browser I got this walkback.
> >
> > Regards,
> > Hernan
> >
> > 27 April 2004 4:18:42 pm
> >
> > VM: Win32 - a SmalltalkImage
> > Image: Squeak3.7beta [latest update: #5878]
> >
> > SecurityManager state:
> > Restricted: false
> > FileAccess: true
> > SocketAccess: true
> > Working Dir C:\Squeak\OB
> > Trusted Dir C:\Squeak\OB\guru
> > Untrusted Dir C:\My Squeak\guru
> >
> > DosFileDirectory(Object)>>error:
> > Receiver: DosFileDirectory on nil
> > Arguments and temporary variables:
> > aString: 'Fully qualified path expected'
> > Receiver's instance variables:
> > pathName: nil
> >
> > DosFileDirectory>>setPathName:
> > Receiver: DosFileDirectory on nil
> > Arguments and temporary variables:
> > pathString: 'A#'
> > Receiver's instance variables:
> > pathName: nil
> >
> > FileDirectory class>>on:
> > Receiver: FileDirectory
> > Arguments and temporary variables:
> > pathString: 'A#'
> > pathName: 'A#'
> > Receiver's instance variables:
> > superclass: Object
> > methodDict: a MethodDictionary(#acceptsUploads->a CompiledMethod
> > (2164) #asUrl->a CompiledMethod (2099) #assur...etc...
> > format: 132
> > instanceVariables: #('pathName')
> > organization: ('path access' fullPathFor: on: pathName
> > pathNameDelimiter pathPa...etc...
> > subclasses: #(UnixFileDirectory AcornFileDirectory MacFileDirectory
> > DosFileDire...etc...
> > name: #FileDirectory
> > classPool: a Dictionary(#DefaultDirectory->DosFileDirectory on
> > 'C:\Squeak\OB' #...etc...
> > sharedPools: nil
> > environment: a SystemDictionary(lots of globals)
> > category: nil
> >
> > DosFileDirectory(FileDirectory)>>directoryNamed:
> > Receiver: DosFileDirectory on ''
> > Arguments and temporary variables:
> > localFileName: 'A:'
> > Receiver's instance variables:
> > pathName: ''
> >
> >
> > --- The full stack ---
> > DosFileDirectory(Object)>>error:
> > DosFileDirectory>>setPathName:
> > FileDirectory class>>on:
> > DosFileDirectory(FileDirectory)>>directoryNamed:
> >  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> > [] in OBDirectoryNode>>directories {[:name | OBDirectoryNode   on:
> > (directory directoryNamed: name)]}
> > Array(SequenceableCollection)>>collect:
> > Array(Collection)>>select:thenCollect:
> > OBDirectoryNode>>directories
> > OBMetaEdge>>nodesForParent:
> > [] in OBMetaNode>>nodesForParent: {[:edge | edge nodesForParent: aNode]}
> > [] in OrderedCollection(Collection)>>gather: {[:ea | stream
> > nextPutAll: (aBlock value: ea)]}
> > OrderedCollection>>do:
> > [] in OrderedCollection(Collection)>>gather: {[:stream | self   do: [:ea
> > | stream     nextPutAll: (aBlock value: ea)]]}
> > Array class(SequenceableCollection class)>>streamContents:
> > OrderedCollection(Collection)>>gather:
> > OBMetaNode>>nodesForParent:
> > OBFilter>>nodesForParent:
> > OBColumn>>getChildren
> > OBColumn>>setBrowser:metaNode:node:
> > OBColumn class>>inBrowser:metaNode:node:
> > OBMetaNode>>columnInBrowser:node:
> > OBBrowser>>setMetaNode:node:
> > OBBrowser class>>metaNode:node:
> > OBBrowser class>>browse:fromRoot:select:minPanes:maxPanes:
> > OBBrowser class>>browse:fromRoot:select:
> > OBBrowser class>>browseFileSystem
> > TheWorldMenu>>doMenuItem:with:
> > [] in MenuItemMorph>>invokeWithEvent: {[(selArgCount := selector
> > numArgs) = 0   ifTrue: [target perform: selector] ...]}
> > BlockContext>>ensure:
> > CursorWithMask(Cursor)>>showWhile:
> > MenuItemMorph>>invokeWithEvent:
> > MenuItemMorph>>mouseUp:
> > MenuItemMorph>>handleMouseUp:
> > MouseButtonEvent>>sentTo:
> > MenuItemMorph(Morph)>>handleEvent:
> > MorphicEventDispatcher>>dispatchDefault:with:
> > MorphicEventDispatcher>>dispatchEvent:with:
> > MenuItemMorph(Morph)>>processEvent:using:
> > MorphicEventDispatcher>>dispatchDefault:with:
> > MorphicEventDispatcher>>dispatchEvent:with:
> > MenuMorph(Morph)>>processEvent:using:
> > MenuMorph(Morph)>>processEvent:
> > MenuMorph>>handleFocusEvent:
> > [] in HandMorph>>sendFocusEvent:to:clear: {[ActiveHand := self.
> > ActiveEvent := anEvent.  result := focusHolder     han...]}
> > [] in PasteUpMorph>>becomeActiveDuring: {[aBlock value]}
> > BlockContext>>on:do:
> > PasteUpMorph>>becomeActiveDuring:
> > HandMorph>>sendFocusEvent:to:clear:
> > HandMorph>>sendEvent:focus:clear:
> > HandMorph>>sendMouseEvent:
> > HandMorph>>handleEvent:
> > HandMorph>>processEvents
> > [] in WorldState>>doOneCycleNowFor: {[:h |  ActiveHand := h.  h
> > processEvents.  capturingGesture := capturingGest...]}
> > Array(SequenceableCollection)>>do:
> > WorldState>>handsDo:
> > WorldState>>doOneCycleNowFor:
> > WorldState>>doOneCycleFor:
> > PasteUpMorph>>doOneCycle
> > [] in Project class>>spawnNewProcess {[[World doOneCycle.  Processor
> > yield.  false] whileFalse.  nil]}
> > [] in BlockContext>>newProcess {[self value.  Processor
> > terminateActive]}
> > ...etc...
> >
>




More information about the Squeak-dev mailing list