[BUG] Can't write files with Squeak 3.2.7Beta5 on MacOS X 10.1.2

Andrew P. Black black at cse.ogi.edu
Thu May 23 08:15:02 UTC 2002


At 17:08 -0700 05/22/2002, John M McIntosh wrote:
>
>having a repeatable test case would be nice.

Well, this is repeatable on my system (OS X 10.2.1) -- but only with 
my copy of  the Squeak3.2gamma-4857.image.  Just drop it on Squeak 
3.2.7Beta5; in the Squeak system that starts, go to the change set 
browser and try to file out the (empty) change set "New Changes".

I get a walkback when header is sent to nil.

But when I downloaded the zip file again and got a fresh 
Squeak3.2gamma-4857.image, the problem does not re-occur.  The only 
thing that I can think of that may have messed things up is that the 
first time that I started that image, I had forgotten to copy the 
sources file into the same directory, and got the usual warnings.  I 
think that I saved before quitting and restarting ...


>
>Look for issues with file or folder name in the path exceeding 32 characters.
>Perhaps the file is opened and never closed, thus maybe an error is 
>now tossed on the open again. Do repeated fileouts to the same 
>changeset name 'foobar.cs' result in a problem?

Yep, the same problem occurs

>
>Squeak 3.0Alpha21MTCarbon uses the macintosh file open api which has 
>different behavior than the Unix file api used by the mach-0 or 
>Cocoa versions of the Mac VM, also it's large file name aware.
>
>Note of course the primOpen:writable: should really throw an 
>exception here? Versus handing off a nil object that later results a 
>does not understand. Somehow catching the error via walkback would 
>be nicer when it happens.

I'm not overly fond of exceptions.   I think that

	open: afilename forWrite: aBoolean onFailure: aBlock

should be the interface that one uses if one wants to react to the 
failure to write the file, and open:forWrite: should be defined in 
terms of open:forWrite:onFailure: with a notifier as the failure 
Block.

>
>PS Any aliased folders in the path?

No

Thanks for you help and forcing me to work though this.

	Andrew



More information about the Squeak-dev mailing list