Return error from FSMakeFSSpec if file not found (#58)

Fixes #56
This commit is contained in:
Ryan Schmidt 2022-11-21 20:13:29 -06:00 committed by GitHub
parent bdb1f4b2b9
commit 2e7e75a2a9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -106,8 +106,6 @@ namespace OS {
{ {
// FSMakeFSSpec(vRefNum: Integer; dirID: LongInt; fileName: Str255; VAR spec: FSSpec): OSErr; // FSMakeFSSpec(vRefNum: Integer; dirID: LongInt; fileName: Str255; VAR spec: FSSpec): OSErr;
// todo -- if the file does not exist (but the path is otherwise valid), create the spec but return fnfErr.
/* /*
* See Chapter 2, File Manager / Using the File Manager, 2-35 * See Chapter 2, File Manager / Using the File Manager, 2-35
* *
@ -176,7 +174,9 @@ namespace OS {
// write the filename... // write the filename...
ToolBox::WritePString(spec + 6, leaf); ToolBox::WritePString(spec + 6, leaf);
return 0; struct stat st;
int rv = ::stat(sname.c_str(), &st);
if (rv < 0) return macos_error_from_errno();
} }
else else