mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-13 11:09:13 +02:00
+ keep also the fds for the current dirs
git-svn-id: trunk@49523 -
This commit is contained in:
parent
d3ce008cd3
commit
ba3383f7e3
@ -55,6 +55,7 @@ var
|
|||||||
preopened_dirs: PPChar;
|
preopened_dirs: PPChar;
|
||||||
drives_count: longint;
|
drives_count: longint;
|
||||||
current_dirs: PPChar;
|
current_dirs: PPChar;
|
||||||
|
current_dir_fds: Plongint;
|
||||||
current_drive: longint;
|
current_drive: longint;
|
||||||
|
|
||||||
procedure DebugWrite(const P: PChar);
|
procedure DebugWrite(const P: PChar);
|
||||||
@ -107,6 +108,7 @@ begin
|
|||||||
preopened_dirs:=nil;
|
preopened_dirs:=nil;
|
||||||
drives_count:=0;
|
drives_count:=0;
|
||||||
current_dirs:=nil;
|
current_dirs:=nil;
|
||||||
|
current_dir_fds:=nil;
|
||||||
current_drive:=0;
|
current_drive:=0;
|
||||||
fd:=3;
|
fd:=3;
|
||||||
repeat
|
repeat
|
||||||
@ -133,14 +135,21 @@ begin
|
|||||||
begin
|
begin
|
||||||
drives_count:=drive_nr+1;
|
drives_count:=drive_nr+1;
|
||||||
if current_dirs=nil then
|
if current_dirs=nil then
|
||||||
current_dirs:=AllocMem(drives_count*SizeOf(PChar))
|
begin
|
||||||
|
current_dirs:=AllocMem(drives_count*SizeOf(PChar));
|
||||||
|
current_dir_fds:=AllocMem(drives_count*SizeOf(longint));
|
||||||
|
end
|
||||||
else
|
else
|
||||||
|
begin
|
||||||
ReAllocMem(current_dirs,drives_count*SizeOf(PChar));
|
ReAllocMem(current_dirs,drives_count*SizeOf(PChar));
|
||||||
|
ReAllocMem(current_dir_fds,drives_count*SizeOf(longint));
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
if current_dirs[drive_nr]=nil then
|
if current_dirs[drive_nr]=nil then
|
||||||
begin
|
begin
|
||||||
current_dirs[drive_nr]:=GetMem(1+StrLen(prestat_dir_name));
|
current_dirs[drive_nr]:=GetMem(1+StrLen(prestat_dir_name));
|
||||||
Move(prestat_dir_name^,current_dirs[drive_nr]^,StrLen(prestat_dir_name)+1);
|
Move(prestat_dir_name^,current_dirs[drive_nr]^,StrLen(prestat_dir_name)+1);
|
||||||
|
current_dir_fds[drive_nr]:=fd;
|
||||||
end;
|
end;
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
|
Loading…
Reference in New Issue
Block a user