mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-10 10:26:17 +02:00
* Some more fixes.
This commit is contained in:
parent
4571b76759
commit
20ffcd4e39
@ -100,7 +100,7 @@ Function LinuxToWinAttr (FN : Char; Const Info : Stat) : Longint;
|
||||
|
||||
|
||||
begin
|
||||
Result:=0;
|
||||
Result:=faArchive;
|
||||
If FN='.' then
|
||||
Result:=Result or faHidden;
|
||||
If (Info.Mode and STAT_IFDIR)=STAT_IFDIR then
|
||||
@ -118,7 +118,7 @@ end;
|
||||
If FileAttributes match, the entry is reused
|
||||
}
|
||||
|
||||
Function GlobToTSearchRec (Info : TSearchRec) : Boolean;
|
||||
Function GlobToTSearchRec (Var Info : TSearchRec) : Boolean;
|
||||
|
||||
Var SInfo : Stat;
|
||||
p : Pglob;
|
||||
@ -127,34 +127,37 @@ Var SInfo : Stat;
|
||||
begin
|
||||
TAttr:=$ffffffff;
|
||||
P:=pglob(Info.FindHandle);
|
||||
Result:=Fstat(p^.name,SInfo);
|
||||
Info.FindHandle:=Longint(P^.Next);
|
||||
P^.Next:=Nil;
|
||||
GlobFree(P);
|
||||
Result:=P<>Nil;
|
||||
If Result then
|
||||
begin
|
||||
Info.Attr:=LinuxToWinAttr(p^.name[0],SInfo);
|
||||
Result:=(Info.ExcludeAttr and TAttr)<>0 ;
|
||||
If Result Then
|
||||
With Info do
|
||||
begin
|
||||
Attr:=Info.Attr;
|
||||
Name:=strpas(p^.name);
|
||||
Time:=Sinfo.mtime;
|
||||
Size:=Sinfo.Size;
|
||||
end;
|
||||
Info.FindHandle:=Longint(P^.Next);
|
||||
Result:=Fstat(p^.name,SInfo);
|
||||
If Result then
|
||||
begin
|
||||
Info.Attr:=LinuxToWinAttr(p^.name[0],SInfo);
|
||||
Result:=(Info.ExcludeAttr and TAttr)<>0;
|
||||
If Result Then
|
||||
With Info do
|
||||
begin
|
||||
Attr:=Info.Attr;
|
||||
If P^.Name<>Nil then
|
||||
Name:=strpas(p^.name);
|
||||
Time:=Sinfo.mtime;
|
||||
Size:=Sinfo.Size;
|
||||
end;
|
||||
end;
|
||||
P^.Next:=Nil;
|
||||
GlobFree(P);
|
||||
end;
|
||||
end;
|
||||
|
||||
Function DoFind(Var Rslt : TSearchRec) : Longint;
|
||||
|
||||
begin
|
||||
Result:=-1;
|
||||
If Rslt.FindHandle<>0 then
|
||||
While (Rslt.FindHandle<>0) and GlobToTSearchRec(Rslt) do;
|
||||
If Rslt.FindHandle=0 Then
|
||||
Result:=-1
|
||||
else
|
||||
Result:=0;
|
||||
While (Rslt.FindHandle<>0) and not (Result=0) do
|
||||
If GlobToTSearchRec(Rslt) Then Result:=0;
|
||||
end;
|
||||
|
||||
|
||||
@ -217,8 +220,7 @@ end;
|
||||
Function FileSetAttr (Const Filename : String; Attr: longint) : Longint;
|
||||
|
||||
begin
|
||||
//!! Still Needs doing
|
||||
Result:=0;
|
||||
Result:=-1;
|
||||
end;
|
||||
|
||||
|
||||
@ -281,7 +283,10 @@ end;
|
||||
|
||||
{
|
||||
$Log$
|
||||
Revision 1.10 1999-05-13 21:54:09 michael
|
||||
Revision 1.11 1999-05-14 22:19:34 michael
|
||||
* Some more fixes.
|
||||
|
||||
Revision 1.10 1999/05/13 21:54:09 michael
|
||||
* Fixed FileAge and corrected FileGetAttr
|
||||
|
||||
Revision 1.9 1999/04/08 11:31:01 peter
|
||||
|
Loading…
Reference in New Issue
Block a user