|
@@ -397,13 +397,13 @@ Begin
|
|
If i<=RtlFindSize Then
|
|
If i<=RtlFindSize Then
|
|
Begin
|
|
Begin
|
|
RtlFindRecs[i].SearchNum:=0;
|
|
RtlFindRecs[i].SearchNum:=0;
|
|
- if f.dirfd<>0 then
|
|
|
|
|
|
+ if f.dirfd<>-1 then
|
|
repeat
|
|
repeat
|
|
res:=__wasi_fd_close(f.dirfd);
|
|
res:=__wasi_fd_close(f.dirfd);
|
|
until (res=__WASI_ERRNO_SUCCESS) or (res<>__WASI_ERRNO_INTR);
|
|
until (res=__WASI_ERRNO_SUCCESS) or (res<>__WASI_ERRNO_INTR);
|
|
End;
|
|
End;
|
|
end;
|
|
end;
|
|
- f.dirfd:=0;
|
|
|
|
|
|
+ f.dirfd:=-1;
|
|
End;
|
|
End;
|
|
|
|
|
|
|
|
|
|
@@ -546,13 +546,11 @@ Begin
|
|
RtlFindRecs[ArrayPos].DirFD := f.DirFD;
|
|
RtlFindRecs[ArrayPos].DirFD := f.DirFD;
|
|
end
|
|
end
|
|
else
|
|
else
|
|
- f.DirFD:=0;
|
|
|
|
|
|
+ f.DirFD:=-1;
|
|
FreeMem(pr);
|
|
FreeMem(pr);
|
|
end
|
|
end
|
|
else
|
|
else
|
|
- begin
|
|
|
|
- f.DirFD:=0;
|
|
|
|
- end;
|
|
|
|
|
|
+ f.DirFD:=-1;
|
|
End;
|
|
End;
|
|
if ArrayPos>0 then
|
|
if ArrayPos>0 then
|
|
RtlFindRecs[ArrayPos].LastUsed:=0;
|
|
RtlFindRecs[ArrayPos].LastUsed:=0;
|
|
@@ -560,7 +558,7 @@ Begin
|
|
{Main loop}
|
|
{Main loop}
|
|
SName:=Copy(f.SearchSpec,f.NamePos+1,255);
|
|
SName:=Copy(f.SearchSpec,f.NamePos+1,255);
|
|
Found:=False;
|
|
Found:=False;
|
|
- Finished:=(f.DirFD=0);
|
|
|
|
|
|
+ Finished:=(f.DirFD=-1);
|
|
While Not Finished Do
|
|
While Not Finished Do
|
|
Begin
|
|
Begin
|
|
res:=__wasi_fd_readdir(f.DirFD,
|
|
res:=__wasi_fd_readdir(f.DirFD,
|
|
@@ -634,7 +632,7 @@ Begin
|
|
else }
|
|
else }
|
|
DosError:=18;
|
|
DosError:=18;
|
|
end;
|
|
end;
|
|
- f.DirFD:=0;
|
|
|
|
|
|
+ f.DirFD:=-1;
|
|
f.SearchType:=1;
|
|
f.SearchType:=1;
|
|
f.searchnum:=-1;
|
|
f.searchnum:=-1;
|
|
end
|
|
end
|