* diskfree doserror fix (merged)

This commit is contained in:
peter 2000-10-11 15:38:03 +00:00
parent 988bcee197
commit f07f30990e

View File

@ -483,12 +483,16 @@ BEGIN
dosregs.cx:=Sizeof(ExtendedFat32FreeSpaceRec); dosregs.cx:=Sizeof(ExtendedFat32FreeSpaceRec);
dosregs.ax:=$7303; dosregs.ax:=$7303;
msdos(dosregs); msdos(dosregs);
copyfromdos(rec,Sizeof(ExtendedFat32FreeSpaceRec));
if dosregs.eax<>-1 THEN {No error clausule in int except cf}
begin
copyfromdos(rec,Sizeof(ExtendedFat32FreeSpaceRec)); copyfromdos(rec,Sizeof(ExtendedFat32FreeSpaceRec));
if Free then if Free then
Do_DiskData:=int64(rec.AvailAllocUnits)*rec.SecPerClus*rec.BytePerSec Do_DiskData:=int64(rec.AvailAllocUnits)*rec.SecPerClus*rec.BytePerSec
else else
Do_DiskData:=int64(rec.TotalAllocUnits)*rec.SecPerClus*rec.BytePerSec; Do_DiskData:=int64(rec.TotalAllocUnits)*rec.SecPerClus*rec.BytePerSec;
if doserror<>0 THEN {No error clausule in int except cf} end
else
Do_DiskData:=-1; Do_DiskData:=-1;
end end
else else
@ -1135,7 +1139,10 @@ End;
end. end.
{ {
$Log$ $Log$
Revision 1.9 2000-09-06 20:47:34 peter Revision 1.10 2000-10-11 15:38:03 peter
* diskfree doserror fix (merged)
Revision 1.9 2000/09/06 20:47:34 peter
* removed previous fsplit() patch as it's not the correct behaviour for * removed previous fsplit() patch as it's not the correct behaviour for
LFNs. The code showing the bug could easily be adapted (merged) LFNs. The code showing the bug could easily be adapted (merged)