CrLfFileStream on MacOSX

John M McIntosh johnmci at smalltalkconsulting.com
Sat Feb 17 10:33:12 UTC 2007


On Feb 17, 2007, at 12:24 AM, Andrew P. Black wrote:

> Hi Rick,
>
> If I interpret what you are saying correctly, the meaning of the  
> primPathNameDelimiter method, which is given by
>
> 	<primitive: 'primitiveDirectoryDelimitor' module: 'FilePlugin'>
>
> has changed in more recent Mac VMs (I'm running 3.8.12Beta1U).  It  
> was $:, but is now $/


Well I would have to dig about in a readme or three, however  
historically the Mac VM started life
under os 7.x  (or earlier) That means it lived with HFS 31? (was it)  
file names  those with ":"

Then HFS+ came along and introduced 255 byte filenames.  so the VM  
was over time migrated
to this which required the vm parm of 1201 to figure out if 31 or 255  
was valid file name size.

And somewhere in there I drag the other vm developers into supporting  
64bit file pointers.

Then OS-X came alone and we limped along with HFS+ for awhile until  
people wanted to do
strange things like open /dev/foobar. Which wasn't possible.

The killer of course was lots of the API calls we were using for HFS+  
were not ported to MacIntel
So I migrated to the unix file name code  which I copied and altered  
to provide proper HFS+ alias support.
The original unix code was quite weak in this area and assumed the  
apple api's would handle multiple level aliases which it does not.

http://www.squeakvm.com/cgi-bin/viewcvs.cgi/trunk/platforms/Mac%20OS/ 
plugins/FilePlugin/sqMacUnixFileInterface.c?rev=1301&view=log

Ah interestingly enough the first check in was 1 year and 2 weeks ago.
Again thanks to Impara for providing a machine so I could do that  
chore. (non-trivial btw).

So if you are running on a macintosh, well it's a unix machine, want  
macintosh like cr/lf patterns well
you need to need deeper.

--
======================================================================== 
===
John M. McIntosh <johnmci at smalltalkconsulting.com>
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
======================================================================== 
===





More information about the Squeak-dev mailing list