|
@@ -422,10 +422,15 @@ Var
|
|
Begin
|
|
Begin
|
|
SystemFileName:=ToSingleByteFileSystemEncodedFileName(Filename);
|
|
SystemFileName:=ToSingleByteFileSystemEncodedFileName(Filename);
|
|
New(FS);
|
|
New(FS);
|
|
- FillChar(FS, SizeOf(FS^), 0);
|
|
|
|
- FS^.AttrFile:=Attr;
|
|
|
|
- RC := DosSetPathInfo(PChar (SystemFileName), ilStandard, FS, SizeOf(FS^), 0);
|
|
|
|
- if RC <> 0 then
|
|
|
|
|
|
+ RC := DosQueryPathInfo (PChar (SystemFileName), ilStandard, FS, SizeOf (FS^));
|
|
|
|
+ if RC = 0 then
|
|
|
|
+ begin
|
|
|
|
+ FS^.AttrFile:=Attr;
|
|
|
|
+ RC := DosSetPathInfo(PChar (SystemFileName), ilStandard, FS, SizeOf(FS^), 0);
|
|
|
|
+ if RC <> 0 then
|
|
|
|
+ OSErrorWatch (RC);
|
|
|
|
+ end
|
|
|
|
+ else
|
|
OSErrorWatch (RC);
|
|
OSErrorWatch (RC);
|
|
Result := - longint (RC);
|
|
Result := - longint (RC);
|
|
Dispose(FS);
|
|
Dispose(FS);
|