[Pharo-project] Problem with FileHandle >> open [WAS] Re: FileReference should throw error when deleting unexisting files?

Camillo Bruni camillobruni at gmail.com
Tue Jun 12 16:49:49 EDT 2012


> In the broken imagen:
> 
> FileHandle >> open
>     self flag: 'TODO: for now we solely rely on the old FileStreams'
>     "id := self basicOpen.
>     id ifNil:     [
>         reference exists ifFalse: [FileDoesNotExist signalWith: reference].
>         self error: 'Unable to open file ' , reference printString]"
> 
> so of course the id remains in nil when it shouldn't. And the image where it works the code is not commened. If I uncomment the code of course it works.
> So what was the idea beheind this change?
> camillo?

because you'll open the file twice!

once in the FileHandle (which is never going to be used) and then again in the FileStream!

of course the way to go would be to fully rely on FileHandles,
but then somebody (hint hint) has to implement a full FileStream protocol
on top of the FileHandles ;)

In the future we will do this since it nicely separates the stream source
(based on bytes) from the actually streamed data (mostly characters).

but for now this is additional work :/

AFAIK I had all the tests running in my image, so what's the problem
again here? (I missed the whole discussion earlier :P)

cami



More information about the Pharo-dev mailing list