Revision history for dirCreate
Additions:
See iPhone
Deletions:
Additions:
The VM cross platform support code thinks in terms of 1000, or 1001 byte path names, yet other code is based on PATH_MAX which on os-x is 1024.
If a path name limit is looked for it's unclear if the platform encoding will increase that.
If a path name limit is looked for it's unclear if the platform encoding will increase that.
Additions:
This can fail because the path is bogus, the length is <= 0, or the name won't decode, or the act of creating the directory is illegal
Deletions:
Additions:
**Parms**:
pathString directory path name to create in image encoding
pathStringLength length of name
**return**: return 1 for success, 0 to make primitive fail.
**From**: Interpreter, filePlugin
To create directory
Create the directory entry if the path name encoded is correct and within file system rules.
Must ensure length of path does not violate some internal path length rule for the operating system
clone of unix, but it works with Finder Aliases.
A bit more error checking and only allows UTF8 names.
Also the default permissions are set to the defaults, which may or may NOT? map to unix umask values?
check file path length, convert to system encoding, make directory with all rwx masked with umask
Convert to wide char, there is NO check for lengths, etc.
then call CreateDirectoryW
pathString directory path name to create in image encoding
pathStringLength length of name
**return**: return 1 for success, 0 to make primitive fail.
**From**: Interpreter, filePlugin
To create directory
Create the directory entry if the path name encoded is correct and within file system rules.
Must ensure length of path does not violate some internal path length rule for the operating system
clone of unix, but it works with Finder Aliases.
A bit more error checking and only allows UTF8 names.
Also the default permissions are set to the defaults, which may or may NOT? map to unix umask values?
check file path length, convert to system encoding, make directory with all rwx masked with umask
Convert to wide char, there is NO check for lengths, etc.
then call CreateDirectoryW
Deletions:
**return**: NONE, fake return of zero
**From**: Interpreter